<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0//EN" "http://www.w3.org/TR/REC-html40/strict.dtd">

<html><head><meta http-equiv="Content-Type" content="text/html; charset=UTF-8"><title>TorControl</title><link rel="stylesheet" type="text/css" href="../../../styles/main.css"><script language=JavaScript src="../../../javascript/main.js"></script><script language=JavaScript src="../../../javascript/prettify.js"></script><script language=JavaScript src="../../../javascript/searchdata.js"></script></head><body class="ContentPage" onLoad="NDOnLoad();prettyPrint();"><script language=JavaScript><!--
if (browserType) {document.write("<div class=" + browserType + ">");if (browserVer) {document.write("<div class=" + browserVer + ">"); }}// --></script>

<!--  Generated by Natural Docs, version 1.52 -->
<!--  http://www.naturaldocs.org  -->

<!-- saved from url=(0026)http://www.naturaldocs.org -->




<div id=Content><div class="CClass"><div class=CTopic id=MainTopic><h1 class=CTitle><a name="TorControl"></a>TorControl</h1><div class=CBody><div class=ClassHierarchy><table border=0 cellspacing=0 cellpadding=0><tr><td><div class=CHParent><div class=CHEntry>EventDispatcher</div></div></td></tr></table><div class=CHIndent><table border=0 cellspacing=0 cellpadding=0><tr><td><div class=CHCurrent><div class=CHEntry>TorControl</div></div></td></tr></table></div></div><p>Provides control and event handling services for core Tor services.</p><h4 class=CHeading>Author</h4><p>Patrick Bay  The MIT License (MIT)  Copyright &copy; 2013 Patrick Bay  Permission is hereby granted, free of charge, to any person obtaining a copy of this software and associated documentation files (the &ldquo;Software&rdquo;), to deal in the Software without restriction, including without limitation the rights to use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies of the Software, and to permit persons to whom the Software is furnished to do so, subject to the following conditions:  The above copyright notice and this permission notice shall be included in all copies or substantial portions of the Software.&nbsp;  THE SOFTWARE IS PROVIDED &ldquo;AS IS&rdquo;, WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT.&nbsp; IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.&nbsp; </p><!--START_ND_SUMMARY--><div class=Summary><div class=STitle>Summary</div><div class=SBorder><table border=0 cellspacing=0 cellpadding=0 class=STable><tr class="SMain"><td class=SEntry><a href="#TorControl" >TorControl</a></td><td class=SDescription>Provides control and event handling services for core Tor services.</td></tr><tr class="SGroup SIndent1"><td class=SEntry><a href="#TorControl.Variables" >Variables</a></td><td class=SDescription></td></tr><tr class="SVariable SIndent2 SMarked"><td class=SEntry><a href="#TorControl.torProcess" id=link1 onMouseOver="ShowTip(event, 'tt1', 'link1')" onMouseOut="HideTip('tt1')">torProcess</a></td><td class=SDescription></td></tr><tr class="SVariable SIndent2"><td class=SEntry><a href="#TorControl._launchServices" id=link2 onMouseOver="ShowTip(event, 'tt2', 'link2')" onMouseOut="HideTip('tt2')">_launchServices</a></td><td class=SDescription></td></tr><tr class="SGroup SIndent1"><td class=SEntry><a href="#TorControl.Constants" >Constants</a></td><td class=SDescription></td></tr><tr class="SConstant SIndent2 SMarked"><td class=SEntry><a href="#TorControl.defaultControlIP" id=link3 onMouseOver="ShowTip(event, 'tt3', 'link3')" onMouseOut="HideTip('tt3')">defaultControlIP</a></td><td class=SDescription></td></tr><tr class="SConstant SIndent2"><td class=SEntry><a href="#TorControl.defaultControlPort" id=link4 onMouseOver="ShowTip(event, 'tt4', 'link4')" onMouseOut="HideTip('tt4')">defaultControlPort</a></td><td class=SDescription></td></tr><tr class="SConstant SIndent2 SMarked"><td class=SEntry><a href="#TorControl.defaultSOCKSIP" id=link5 onMouseOver="ShowTip(event, 'tt5', 'link5')" onMouseOut="HideTip('tt5')">defaultSOCKSIP</a></td><td class=SDescription></td></tr><tr class="SConstant SIndent2"><td class=SEntry><a href="#TorControl.defaultSOCKSPort" id=link6 onMouseOver="ShowTip(event, 'tt6', 'link6')" onMouseOut="HideTip('tt6')">defaultSOCKSPort</a></td><td class=SDescription></td></tr><tr class="SGroup SIndent1"><td class=SEntry><a href="#TorControl.Variables" >Variables</a></td><td class=SDescription></td></tr><tr class="SVariable SIndent2 SMarked"><td class=SEntry><a href="#TorControl._controlIP" id=link7 onMouseOver="ShowTip(event, 'tt7', 'link7')" onMouseOut="HideTip('tt7')">_controlIP</a></td><td class=SDescription></td></tr><tr class="SVariable SIndent2"><td class=SEntry><a href="#TorControl._controlPort" id=link8 onMouseOver="ShowTip(event, 'tt8', 'link8')" onMouseOut="HideTip('tt8')">_controlPort</a></td><td class=SDescription></td></tr><tr class="SVariable SIndent2 SMarked"><td class=SEntry><a href="#TorControl._SOCKSIP" id=link9 onMouseOver="ShowTip(event, 'tt9', 'link9')" onMouseOut="HideTip('tt9')">_SOCKSIP</a></td><td class=SDescription></td></tr><tr class="SVariable SIndent2"><td class=SEntry><a href="#TorControl._SOCKSPort" id=link10 onMouseOver="ShowTip(event, 'tt10', 'link10')" onMouseOut="HideTip('tt10')">_SOCKSPort</a></td><td class=SDescription></td></tr><tr class="SVariable SIndent2 SMarked"><td class=SEntry><a href="#TorControl._socket" id=link11 onMouseOver="ShowTip(event, 'tt11', 'link11')" onMouseOut="HideTip('tt11')">_socket</a></td><td class=SDescription></td></tr><tr class="SVariable SIndent2"><td class=SEntry><a href="#TorControl._controlPasswordHash" id=link12 onMouseOver="ShowTip(event, 'tt12', 'link12')" onMouseOut="HideTip('tt12')">_controlPasswordHash</a></td><td class=SDescription></td></tr><tr class="SVariable SIndent2 SMarked"><td class=SEntry><a href="#TorControl._controlPassword" id=link13 onMouseOver="ShowTip(event, 'tt13', 'link13')" onMouseOut="HideTip('tt13')">_controlPassword</a></td><td class=SDescription></td></tr><tr class="SVariable SIndent2"><td class=SEntry><a href="#TorControl._connectDelay" id=link14 onMouseOver="ShowTip(event, 'tt14', 'link14')" onMouseOut="HideTip('tt14')">_connectDelay</a></td><td class=SDescription></td></tr><tr class="SVariable SIndent2 SMarked"><td class=SEntry><a href="#TorControl._connected" id=link15 onMouseOver="ShowTip(event, 'tt15', 'link15')" onMouseOut="HideTip('tt15')">_connected</a></td><td class=SDescription></td></tr><tr class="SVariable SIndent2"><td class=SEntry><a href="#TorControl._authenticated" id=link16 onMouseOver="ShowTip(event, 'tt16', 'link16')" onMouseOut="HideTip('tt16')">_authenticated</a></td><td class=SDescription></td></tr><tr class="SGroup SIndent1"><td class=SEntry><a href="#TorControl.Constants" >Constants</a></td><td class=SDescription></td></tr><tr class="SConstant SIndent2 SMarked"><td class=SEntry><a href="#TorControl.rootTorPath" id=link17 onMouseOver="ShowTip(event, 'tt17', 'link17')" onMouseOut="HideTip('tt17')">rootTorPath</a></td><td class=SDescription></td></tr><tr class="SConstant SIndent2"><td class=SEntry><a href="#TorControl.executable" id=link18 onMouseOver="ShowTip(event, 'tt18', 'link18')" onMouseOut="HideTip('tt18')">executable</a></td><td class=SDescription></td></tr><tr class="SConstant SIndent2 SMarked"><td class=SEntry><a href="#TorControl.configFile" id=link19 onMouseOver="ShowTip(event, 'tt19', 'link19')" onMouseOut="HideTip('tt19')">configFile</a></td><td class=SDescription></td></tr><tr class="SGroup SIndent1"><td class=SEntry><a href="#TorControl.Variables" >Variables</a></td><td class=SDescription></td></tr><tr class="SVariable SIndent2 SMarked"><td class=SEntry><a href="#TorControl.configData" id=link20 onMouseOver="ShowTip(event, 'tt20', 'link20')" onMouseOut="HideTip('tt20')">configData</a></td><td class=SDescription>The contents of the <a href="#TorControl.config" class=LProperty id=link21 onMouseOver="ShowTip(event, 'tt21', 'link21')" onMouseOut="HideTip('tt21')">config</a> node are parsed and used to generate the config file (specified above). </td></tr><tr class="SVariable SIndent2"><td class=SEntry><a href="#TorControl._torPHProcess" id=link22 onMouseOver="ShowTip(event, 'tt22', 'link22')" onMouseOut="HideTip('tt22')">_torPHProcess</a></td><td class=SDescription></td></tr><tr class="SVariable SIndent2 SMarked"><td class=SEntry><a href="#TorControl._synchResponseBuffer" id=link23 onMouseOver="ShowTip(event, 'tt23', 'link23')" onMouseOut="HideTip('tt23')">_synchResponseBuffer</a></td><td class=SDescription></td></tr><tr class="SVariable SIndent2"><td class=SEntry><a href="#TorControl._asynchEventBuffer" id=link24 onMouseOver="ShowTip(event, 'tt24', 'link24')" onMouseOut="HideTip('tt24')">_asynchEventBuffer</a></td><td class=SDescription></td></tr><tr class="SVariable SIndent2 SMarked"><td class=SEntry><a href="#TorControl._synchRawResponseBuffer" id=link25 onMouseOver="ShowTip(event, 'tt25', 'link25')" onMouseOut="HideTip('tt25')">_synchRawResponseBuffer</a></td><td class=SDescription></td></tr><tr class="SVariable SIndent2"><td class=SEntry><a href="#TorControl._asynchRawEventBuffer" id=link26 onMouseOver="ShowTip(event, 'tt26', 'link26')" onMouseOut="HideTip('tt26')">_asynchRawEventBuffer</a></td><td class=SDescription></td></tr><tr class="SVariable SIndent2 SMarked"><td class=SEntry><a href="#TorControl._enabledEvents" id=link27 onMouseOver="ShowTip(event, 'tt27', 'link27')" onMouseOut="HideTip('tt27')">_enabledEvents</a></td><td class=SDescription></td></tr><tr class="SGroup SIndent1"><td class=SEntry><a href="#TorControl.Functions_and_Properties" >Functions and Properties</a></td><td class=SDescription></td></tr><tr class="SFunction SIndent2 SMarked"><td class=SEntry><a href="#TorControl.TorControl" id=link28 onMouseOver="ShowTip(event, 'tt28', 'link28')" onMouseOut="HideTip('tt28')">TorControl</a></td><td class=SDescription>Creates an instance of TorControl.</td></tr><tr class="SProperty SIndent2"><td class=SEntry><a href="#TorControl.config" id=link29 onMouseOver="ShowTip(event, 'tt21', 'link29')" onMouseOut="HideTip('tt21')">config</a></td><td class=SDescription>The configuration data for the Tor services binary. </td></tr><tr class="SProperty SIndent2 SMarked"><td class=SEntry><a href="#TorControl.config" id=link30 onMouseOver="ShowTip(event, 'tt21', 'link30')" onMouseOut="HideTip('tt21')">config</a></td><td class=SDescription></td></tr><tr class="SFunction SIndent2"><td class=SEntry><a href="#TorControl.getPasswordHash" id=link31 onMouseOver="ShowTip(event, 'tt29', 'link31')" onMouseOut="HideTip('tt29')">getPasswordHash</a></td><td class=SDescription></td></tr><tr class="SFunction SIndent2 SMarked"><td class=SEntry><a href="#TorControl.onHashPassword" id=link32 onMouseOver="ShowTip(event, 'tt30', 'link32')" onMouseOut="HideTip('tt30')">onHashPassword</a></td><td class=SDescription></td></tr><tr class="SFunction SIndent2"><td class=SEntry><a href="#TorControl.connect" id=link33 onMouseOver="ShowTip(event, 'tt31', 'link33')" onMouseOut="HideTip('tt31')">connect</a></td><td class=SDescription>Attempts to connect to the running Tor control process via pre-set (in constructor) socket settings.</td></tr><tr class="SFunction SIndent2 SMarked"><td class=SEntry><a href="#TorControl.onTorControlReady" id=link34 onMouseOver="ShowTip(event, 'tt32', 'link34')" onMouseOut="HideTip('tt32')">onTorControlReady</a></td><td class=SDescription>Invoked when the Tor process is ready to accept a connection (for example, the process was successfully launched).</td></tr><tr class="SFunction SIndent2"><td class=SEntry><a href="#TorControl.disconnect" id=link35 onMouseOver="ShowTip(event, 'tt33', 'link35')" onMouseOut="HideTip('tt33')">disconnect</a></td><td class=SDescription>Disconnects from the Tor control socket. </td></tr><tr class="SProperty SIndent2 SMarked"><td class=SEntry><a href="#TorControl.launchServices" id=link36 onMouseOver="ShowTip(event, 'tt34', 'link36')" onMouseOut="HideTip('tt34')">launchServices</a></td><td class=SDescription>Enables (true) or disables (false) the automatic launching of the Tor services binary at startup. </td></tr><tr class="SProperty SIndent2"><td class=SEntry><a href="#TorControl.launchServices" id=link37 onMouseOver="ShowTip(event, 'tt34', 'link37')" onMouseOut="HideTip('tt34')">launchServices</a></td><td class=SDescription></td></tr><tr class="SFunction SIndent2 SMarked"><td class=SEntry><a href="#TorControl.prepareTorProcess" id=link38 onMouseOver="ShowTip(event, 'tt35', 'link38')" onMouseOut="HideTip('tt35')">prepareTorProcess</a></td><td class=SDescription>Prepares to launch the Tor process using supplied initialization data.</td></tr><tr class="SFunction SIndent2"><td class=SEntry><a href="#TorControl.launchTorProcess" id=link39 onMouseOver="ShowTip(event, 'tt36', 'link39')" onMouseOut="HideTip('tt36')">launchTorProcess</a></td><td class=SDescription>Attempts to launch the Tor process (binary). </td></tr><tr class="SFunction SIndent2 SMarked"><td class=SEntry><a href="#TorControl.stopTorProcess" id=link40 onMouseOver="ShowTip(event, 'tt37', 'link40')" onMouseOut="HideTip('tt37')">stopTorProcess</a></td><td class=SDescription>Stops a running Tor process, if one was started by TorContol. </td></tr><tr class="SProperty SIndent2"><td class=SEntry><a href="#TorControl.controlIP" id=link41 onMouseOver="ShowTip(event, 'tt38', 'link41')" onMouseOut="HideTip('tt38')">controlIP</a></td><td class=SDescription>The IP of the Tor control socket (usually 127.0.0.1).</td></tr><tr class="SProperty SIndent2 SMarked"><td class=SEntry><a href="#TorControl.controlPort" id=link42 onMouseOver="ShowTip(event, 'tt39', 'link42')" onMouseOut="HideTip('tt39')">controlPort</a></td><td class=SDescription>The port of the Tor control socket (usually 9151).</td></tr><tr class="SProperty SIndent2"><td class=SEntry><a href="#TorControl.SOCKSIP" id=link43 onMouseOver="ShowTip(event, 'tt40', 'link43')" onMouseOut="HideTip('tt40')">SOCKSIP</a></td><td class=SDescription>The IP of the Tor SOCKS proxy socket (usually 127.0.0.1).</td></tr><tr class="SProperty SIndent2 SMarked"><td class=SEntry><a href="#TorControl.SOCKSPort" id=link44 onMouseOver="ShowTip(event, 'tt41', 'link44')" onMouseOut="HideTip('tt41')">SOCKSPort</a></td><td class=SDescription>The port of the Tor SOCKS proxy socket (usually 1080).</td></tr><tr class="SProperty SIndent2"><td class=SEntry><a href="#TorControl.connected" id=link45 onMouseOver="ShowTip(event, 'tt42', 'link45')" onMouseOut="HideTip('tt42')">connected</a></td><td class=SDescription>The status of the Tor control connection: true=connected, false=not connected</td></tr><tr class="SProperty SIndent2 SMarked"><td class=SEntry><a href="#TorControl.authenticated" id=link46 onMouseOver="ShowTip(event, 'tt43', 'link46')" onMouseOut="HideTip('tt43')">authenticated</a></td><td class=SDescription>The authentication status of the Tor control connection: true=authenticated, false=not authenticated</td></tr><tr class="SFunction SIndent2"><td class=SEntry><a href="#TorControl.establishNewCircuit" id=link47 onMouseOver="ShowTip(event, 'tt44', 'link47')" onMouseOut="HideTip('tt44')">establishNewCircuit</a></td><td class=SDescription>Establish a new Tor circuit through which future requests will be tunneled. </td></tr><tr class="SFunction SIndent2 SMarked"><td class=SEntry><a href="#TorControl.generateConfigFile" id=link48 onMouseOver="ShowTip(event, 'tt45', 'link48')" onMouseOut="HideTip('tt45')">generateConfigFile</a></td><td class=SDescription>Generates the Tor config file from settings derived from various class properties (see near top of this class declaration).</td></tr><tr class="SFunction SIndent2"><td class=SEntry><a href="#TorControl.onStandardOutData" id=link49 onMouseOver="ShowTip(event, 'tt46', 'link49')" onMouseOut="HideTip('tt46')">onStandardOutData</a></td><td class=SDescription>Handles STDOUT messages from the running Tor process. </td></tr><tr class="SFunction SIndent2 SMarked"><td class=SEntry><a href="#TorControl.onConnect" id=link50 onMouseOver="ShowTip(event, 'tt47', 'link50')" onMouseOut="HideTip('tt47')">onConnect</a></td><td class=SDescription>Invoked when TorControl successfully connects to the (presumably) Tor control socket. </td></tr><tr class="SFunction SIndent2"><td class=SEntry><a href="#TorControl.onConnectError" id=link51 onMouseOver="ShowTip(event, 'tt48', 'link51')" onMouseOut="HideTip('tt48')">onConnectError</a></td><td class=SDescription>Invoked when TorControl receives an IOErrorEvent.</td></tr><tr class="SFunction SIndent2 SMarked"><td class=SEntry><a href="#TorControl.onConnectSecurityError" id=link52 onMouseOver="ShowTip(event, 'tt49', 'link52')" onMouseOut="HideTip('tt49')">onConnectSecurityError</a></td><td class=SDescription>Invoked when TorControl receives an SecurityErrorEvent.</td></tr><tr class="SFunction SIndent2"><td class=SEntry><a href="#TorControl.authenticate" id=link53 onMouseOver="ShowTip(event, 'tt50', 'link53')" onMouseOut="HideTip('tt50')">authenticate</a></td><td class=SDescription>Send the authentication message to the Tor control socket.</td></tr><tr class="SProperty SIndent2 SMarked"><td class=SEntry><a href="#TorControl.usePasswordAuthentication" id=link54 onMouseOver="ShowTip(event, 'tt51', 'link54')" onMouseOut="HideTip('tt51')">usePasswordAuthentication</a></td><td class=SDescription></td></tr><tr class="SFunction SIndent2"><td class=SEntry><a href="#TorControl.sendRawControlMessage" id=link55 onMouseOver="ShowTip(event, 'tt52', 'link55')" onMouseOut="HideTip('tt52')">sendRawControlMessage</a></td><td class=SDescription>Sends a raw control message to the connected and authenticated control socket. </td></tr><tr class="SFunction SIndent2 SMarked"><td class=SEntry><a href="#TorControl.addEventListener" id=link56 onMouseOver="ShowTip(event, 'tt53', 'link56')" onMouseOut="HideTip('tt53')">addEventListener</a></td><td class=SDescription></td></tr><tr class="SFunction SIndent2"><td class=SEntry><a href="#TorControl.enableTorEvent" id=link57 onMouseOver="ShowTip(event, 'tt54', 'link57')" onMouseOut="HideTip('tt54')">enableTorEvent</a></td><td class=SDescription>Enable a Tor control event (sent from the running process).</td></tr><tr class="SFunction SIndent2 SMarked"><td class=SEntry><a href="#TorControl.disableTorEvent" id=link58 onMouseOver="ShowTip(event, 'tt55', 'link58')" onMouseOut="HideTip('tt55')">disableTorEvent</a></td><td class=SDescription>Disable a Tor control event (sent from the running process).</td></tr><tr class="SFunction SIndent2"><td class=SEntry><a href="#TorControl.disableAllTorEvents" id=link59 onMouseOver="ShowTip(event, 'tt56', 'link59')" onMouseOut="HideTip('tt56')">disableAllTorEvents</a></td><td class=SDescription>Disables all Tor control events (sent from the running process).</td></tr><tr class="SProperty SIndent2 SMarked"><td class=SEntry><a href="#TorControl.enabledAsyncEventList" id=link60 onMouseOver="ShowTip(event, 'tt57', 'link60')" onMouseOut="HideTip('tt57')">enabledAsyncEventList</a></td><td class=SDescription></td></tr><tr class="SFunction SIndent2"><td class=SEntry><a href="#TorControl.addUniqueAsyncEvent" id=link61 onMouseOver="ShowTip(event, 'tt58', 'link61')" onMouseOut="HideTip('tt58')">addUniqueAsyncEvent</a></td><td class=SDescription></td></tr><tr class="SFunction SIndent2 SMarked"><td class=SEntry><a href="#TorControl.removeAsyncEvent" id=link62 onMouseOver="ShowTip(event, 'tt59', 'link62')" onMouseOut="HideTip('tt59')">removeAsyncEvent</a></td><td class=SDescription></td></tr><tr class="SFunction SIndent2"><td class=SEntry><a href="#TorControl.onData" id=link63 onMouseOver="ShowTip(event, 'tt60', 'link63')" onMouseOut="HideTip('tt60')">onData</a></td><td class=SDescription></td></tr><tr class="SFunction SIndent2 SMarked"><td class=SEntry><a href="#TorControl.isMultilineMessage" id=link64 onMouseOver="ShowTip(event, 'tt61', 'link64')" onMouseOut="HideTip('tt61')">isMultilineMessage</a></td><td class=SDescription></td></tr><tr class="SFunction SIndent2"><td class=SEntry><a href="#TorControl.dispatchAsynchTorEvent" id=link65 onMouseOver="ShowTip(event, 'tt62', 'link65')" onMouseOut="HideTip('tt62')">dispatchAsynchTorEvent</a></td><td class=SDescription></td></tr><tr class="SFunction SIndent2 SMarked"><td class=SEntry><a href="#TorControl.dispatchTorResponse" id=link66 onMouseOver="ShowTip(event, 'tt63', 'link66')" onMouseOut="HideTip('tt63')">dispatchTorResponse</a></td><td class=SDescription></td></tr><tr class="SFunction SIndent2"><td class=SEntry><a href="#TorControl.parseReceivedData" id=link67 onMouseOver="ShowTip(event, 'tt64', 'link67')" onMouseOut="HideTip('tt64')">parseReceivedData</a></td><td class=SDescription></td></tr><tr class="SFunction SIndent2 SMarked"><td class=SEntry><a href="#TorControl.replaceMeta" id=link68 onMouseOver="ShowTip(event, 'tt65', 'link68')" onMouseOut="HideTip('tt65')">replaceMeta</a></td><td class=SDescription></td></tr></table></div></div><!--END_ND_SUMMARY--></div></div></div>

<div class="CGroup"><div class=CTopic><h3 class=CTitle><a name="TorControl.Variables"></a>Variables</h3></div></div>

<div class="CVariable"><div class=CTopic><h3 class=CTitle><a name="TorControl.torProcess"></a>torProcess</h3><div class=CBody><blockquote><table border=0 cellspacing=0 cellpadding=0 class="Prototype"><tr><td class="prettyprint">private static var torProcess: NativeProcess</td></tr></table></blockquote></div></div></div>

<div class="CVariable"><div class=CTopic><h3 class=CTitle><a name="TorControl._launchServices"></a>_launchServices</h3><div class=CBody><blockquote><table border=0 cellspacing=0 cellpadding=0 class="Prototype"><tr><td class="prettyprint">private var _launchServices: Boolean</td></tr></table></blockquote></div></div></div>

<div class="CGroup"><div class=CTopic><h3 class=CTitle><a name="TorControl.Constants"></a>Constants</h3></div></div>

<div class="CConstant"><div class=CTopic><h3 class=CTitle><a name="TorControl.defaultControlIP"></a>defaultControlIP</h3><div class=CBody><blockquote><table border=0 cellspacing=0 cellpadding=0 class="Prototype"><tr><td class="prettyprint">private static const defaultControlIP: String</td></tr></table></blockquote></div></div></div>

<div class="CConstant"><div class=CTopic><h3 class=CTitle><a name="TorControl.defaultControlPort"></a>defaultControlPort</h3><div class=CBody><blockquote><table border=0 cellspacing=0 cellpadding=0 class="Prototype"><tr><td class="prettyprint">private static const defaultControlPort: int</td></tr></table></blockquote></div></div></div>

<div class="CConstant"><div class=CTopic><h3 class=CTitle><a name="TorControl.defaultSOCKSIP"></a>defaultSOCKSIP</h3><div class=CBody><blockquote><table border=0 cellspacing=0 cellpadding=0 class="Prototype"><tr><td class="prettyprint">private static const defaultSOCKSIP: String</td></tr></table></blockquote></div></div></div>

<div class="CConstant"><div class=CTopic><h3 class=CTitle><a name="TorControl.defaultSOCKSPort"></a>defaultSOCKSPort</h3><div class=CBody><blockquote><table border=0 cellspacing=0 cellpadding=0 class="Prototype"><tr><td class="prettyprint">private static const defaultSOCKSPort: int</td></tr></table></blockquote></div></div></div>

<div class="CGroup"><div class=CTopic><h3 class=CTitle><a name="TorControl.Variables"></a>Variables</h3></div></div>

<div class="CVariable"><div class=CTopic><h3 class=CTitle><a name="TorControl._controlIP"></a>_controlIP</h3><div class=CBody><blockquote><table border=0 cellspacing=0 cellpadding=0 class="Prototype"><tr><td class="prettyprint">private static var _controlIP: String</td></tr></table></blockquote></div></div></div>

<div class="CVariable"><div class=CTopic><h3 class=CTitle><a name="TorControl._controlPort"></a>_controlPort</h3><div class=CBody><blockquote><table border=0 cellspacing=0 cellpadding=0 class="Prototype"><tr><td class="prettyprint">private static var _controlPort: int</td></tr></table></blockquote></div></div></div>

<div class="CVariable"><div class=CTopic><h3 class=CTitle><a name="TorControl._SOCKSIP"></a>_SOCKSIP</h3><div class=CBody><blockquote><table border=0 cellspacing=0 cellpadding=0 class="Prototype"><tr><td class="prettyprint">private static var _SOCKSIP: String</td></tr></table></blockquote></div></div></div>

<div class="CVariable"><div class=CTopic><h3 class=CTitle><a name="TorControl._SOCKSPort"></a>_SOCKSPort</h3><div class=CBody><blockquote><table border=0 cellspacing=0 cellpadding=0 class="Prototype"><tr><td class="prettyprint">private static var _SOCKSPort: int</td></tr></table></blockquote></div></div></div>

<div class="CVariable"><div class=CTopic><h3 class=CTitle><a name="TorControl._socket"></a>_socket</h3><div class=CBody><blockquote><table border=0 cellspacing=0 cellpadding=0 class="Prototype"><tr><td class="prettyprint">private static var _socket: Socket</td></tr></table></blockquote></div></div></div>

<div class="CVariable"><div class=CTopic><h3 class=CTitle><a name="TorControl._controlPasswordHash"></a>_controlPasswordHash</h3><div class=CBody><blockquote><table border=0 cellspacing=0 cellpadding=0 class="Prototype"><tr><td class="prettyprint">private static var _controlPasswordHash: String</td></tr></table></blockquote></div></div></div>

<div class="CVariable"><div class=CTopic><h3 class=CTitle><a name="TorControl._controlPassword"></a>_controlPassword</h3><div class=CBody><blockquote><table border=0 cellspacing=0 cellpadding=0 class="Prototype"><tr><td class="prettyprint">private static var _controlPassword: String</td></tr></table></blockquote></div></div></div>

<div class="CVariable"><div class=CTopic><h3 class=CTitle><a name="TorControl._connectDelay"></a>_connectDelay</h3><div class=CBody><blockquote><table border=0 cellspacing=0 cellpadding=0 class="Prototype"><tr><td class="prettyprint">private var _connectDelay: Number</td></tr></table></blockquote></div></div></div>

<div class="CVariable"><div class=CTopic><h3 class=CTitle><a name="TorControl._connected"></a>_connected</h3><div class=CBody><blockquote><table border=0 cellspacing=0 cellpadding=0 class="Prototype"><tr><td class="prettyprint">private static var _connected: Boolean</td></tr></table></blockquote></div></div></div>

<div class="CVariable"><div class=CTopic><h3 class=CTitle><a name="TorControl._authenticated"></a>_authenticated</h3><div class=CBody><blockquote><table border=0 cellspacing=0 cellpadding=0 class="Prototype"><tr><td class="prettyprint">private static var _authenticated: Boolean</td></tr></table></blockquote></div></div></div>

<div class="CGroup"><div class=CTopic><h3 class=CTitle><a name="TorControl.Constants"></a>Constants</h3></div></div>

<div class="CConstant"><div class=CTopic><h3 class=CTitle><a name="TorControl.rootTorPath"></a>rootTorPath</h3><div class=CBody><blockquote><table border=0 cellspacing=0 cellpadding=0 class="Prototype"><tr><td class="prettyprint">public static const rootTorPath: String</td></tr></table></blockquote></div></div></div>

<div class="CConstant"><div class=CTopic><h3 class=CTitle><a name="TorControl.executable"></a>executable</h3><div class=CBody><blockquote><table border=0 cellspacing=0 cellpadding=0 class="Prototype"><tr><td class="prettyprint">public static const executable: String</td></tr></table></blockquote></div></div></div>

<div class="CConstant"><div class=CTopic><h3 class=CTitle><a name="TorControl.configFile"></a>configFile</h3><div class=CBody><blockquote><table border=0 cellspacing=0 cellpadding=0 class="Prototype"><tr><td class="prettyprint">public static const configFile: String</td></tr></table></blockquote></div></div></div>

<div class="CGroup"><div class=CTopic><h3 class=CTitle><a name="TorControl.Variables"></a>Variables</h3></div></div>

<div class="CVariable"><div class=CTopic><h3 class=CTitle><a name="TorControl.configData"></a>configData</h3><div class=CBody><blockquote><table border=0 cellspacing=0 cellpadding=0 class="Prototype"><tr><td class="prettyprint">public static var configData: XML</td></tr></table></blockquote><p>The contents of the <a href="#TorControl.config" class=LProperty id=link69 onMouseOver="ShowTip(event, 'tt21', 'link69')" onMouseOut="HideTip('tt21')">config</a> node are parsed and used to generate the config file (specified above).&nbsp; Meta information may be included in the information.&nbsp; This includes:</p><table border=0 cellspacing=0 cellpadding=0 class=CDescriptionList><tr><td class=CDLEntry>%control_ip%</td><td class=CDLDescription>The control IP currently being used by the TorControl instance and running Tor services.</td></tr><tr><td class=CDLEntry>%control_port%</td><td class=CDLDescription>The control port currently being used by the TorControl instance and running Tor services.</td></tr><tr><td class=CDLEntry>%socks_ip%</td><td class=CDLDescription>The SOCKS IP currently being used by the running Tor proxy.</td></tr><tr><td class=CDLEntry>%socks_port%</td><td class=CDLDescription>The SOCKS port currently being used by the running Tor proxy.</td></tr><tr><td class=CDLEntry>%control_passhash%</td><td class=CDLDescription>The control pasword authentication hash.</td></tr></table></div></div></div>

<div class="CVariable"><div class=CTopic><h3 class=CTitle><a name="TorControl._torPHProcess"></a>_torPHProcess</h3><div class=CBody><blockquote><table border=0 cellspacing=0 cellpadding=0 class="Prototype"><tr><td class="prettyprint">private var _torPHProcess: NativeProcess</td></tr></table></blockquote></div></div></div>

<div class="CVariable"><div class=CTopic><h3 class=CTitle><a name="TorControl._synchResponseBuffer"></a>_synchResponseBuffer</h3><div class=CBody><blockquote><table border=0 cellspacing=0 cellpadding=0 class="Prototype"><tr><td class="prettyprint">private var _synchResponseBuffer: String</td></tr></table></blockquote></div></div></div>

<div class="CVariable"><div class=CTopic><h3 class=CTitle><a name="TorControl._asynchEventBuffer"></a>_asynchEventBuffer</h3><div class=CBody><blockquote><table border=0 cellspacing=0 cellpadding=0 class="Prototype"><tr><td class="prettyprint">private var _asynchEventBuffer: String</td></tr></table></blockquote></div></div></div>

<div class="CVariable"><div class=CTopic><h3 class=CTitle><a name="TorControl._synchRawResponseBuffer"></a>_synchRawResponseBuffer</h3><div class=CBody><blockquote><table border=0 cellspacing=0 cellpadding=0 class="Prototype"><tr><td class="prettyprint">private var _synchRawResponseBuffer: String</td></tr></table></blockquote></div></div></div>

<div class="CVariable"><div class=CTopic><h3 class=CTitle><a name="TorControl._asynchRawEventBuffer"></a>_asynchRawEventBuffer</h3><div class=CBody><blockquote><table border=0 cellspacing=0 cellpadding=0 class="Prototype"><tr><td class="prettyprint">private var _asynchRawEventBuffer: String</td></tr></table></blockquote></div></div></div>

<div class="CVariable"><div class=CTopic><h3 class=CTitle><a name="TorControl._enabledEvents"></a>_enabledEvents</h3><div class=CBody><blockquote><table border=0 cellspacing=0 cellpadding=0 class="Prototype"><tr><td class="prettyprint">private var _enabledEvents: Array</td></tr></table></blockquote></div></div></div>

<div class="CGroup"><div class=CTopic><h3 class=CTitle><a name="TorControl.Functions_and_Properties"></a>Functions and Properties</h3></div></div>

<div class="CFunction"><div class=CTopic><h3 class=CTitle><a name="TorControl.TorControl"></a>TorControl</h3><div class=CBody><blockquote><table border=0 cellspacing=0 cellpadding=0 class="Prototype"><tr><td><table border=0 cellspacing=0 cellpadding=0><tr><td class="PBeforeParameters  prettyprint "nowrap>public function TorControl(</td><td class="PParameter  prettyprint " nowrap>controlIP:</td><td class="PType  prettyprint " nowrap>&nbsp;String</td><td class="PDefaultValuePrefix  prettyprint ">&nbsp;=&nbsp;</td><td class="PDefaultValue  prettyprint " width=100%>defaultControlIP,</td></tr><tr><td></td><td class="PParameter  prettyprint " nowrap>controlPort:</td><td class="PType  prettyprint " nowrap>&nbsp;int</td><td class="PDefaultValuePrefix  prettyprint ">&nbsp;=&nbsp;</td><td class="PDefaultValue  prettyprint " width=100%>defaultControlPort,</td></tr><tr><td></td><td class="PParameter  prettyprint " nowrap>SOCKSIP:</td><td class="PType  prettyprint " nowrap>&nbsp;String</td><td class="PDefaultValuePrefix  prettyprint ">&nbsp;=&nbsp;</td><td class="PDefaultValue  prettyprint " width=100%>defaultSOCKSIP,</td></tr><tr><td></td><td class="PParameter  prettyprint " nowrap>SOCKSPort:</td><td class="PType  prettyprint " nowrap>&nbsp;int</td><td class="PDefaultValuePrefix  prettyprint ">&nbsp;=&nbsp;</td><td class="PDefaultValue  prettyprint " width=100%>defaultSOCKSPort,</td></tr><tr><td></td><td class="PParameter  prettyprint " nowrap>controlPass:</td><td class="PType  prettyprint " nowrap>&nbsp;String</td><td class="PDefaultValuePrefix  prettyprint ">&nbsp;=&nbsp;</td><td class="PDefaultValue  prettyprint " width=100%>null,</td></tr><tr><td></td><td class="PParameter  prettyprint " nowrap>connectDelay:</td><td class="PType  prettyprint " nowrap>&nbsp;Number</td><td class="PDefaultValuePrefix  prettyprint ">&nbsp;=&nbsp;</td><td class="PDefaultValue  prettyprint " width=100%>0</td><td class="PAfterParameters  prettyprint "nowrap>)</td></tr></table></td></tr></table></blockquote><p>Creates an instance of TorControl.</p><h4 class=CHeading>Parameters</h4><table border=0 cellspacing=0 cellpadding=0 class=CDescriptionList><tr><td class=CDLEntry>param</td><td class=CDLDescription>  controlIP The control IP of the running Tor process.&nbsp; An empty or null string will cause the default value to be used.</td></tr><tr><td class=CDLEntry>param</td><td class=CDLDescription>  controlPort The control port of the running Tor process.&nbsp; A negative value will cause the default value to be used.</td></tr><tr><td class=CDLEntry>param</td><td class=CDLDescription>  SOCKSIP The SOCKS5 IP of the running Tor proxy.&nbsp; An empty or null string will cause the default value to be used.</td></tr><tr><td class=CDLEntry>param</td><td class=CDLDescription>  SOCKSPort The SOCKS5 port of the running Tor proxy.&nbsp; A negative value will cause the default value to be used.</td></tr><tr><td class=CDLEntry>param</td><td class=CDLDescription>  controlPass The control password (raw, or unhashed) required to access the Tor process control connection.</td></tr><tr><td class=CDLEntry>param</td><td class=CDLDescription>  connectDelay Delay, in seconds, to wait to attempt to connect to the Tor control socket (allows Tor process to be started).&nbsp; </td></tr></table></div></div></div>

<div class="CProperty"><div class=CTopic><h3 class=CTitle><a name="TorControl.config"></a>config</h3><div class=CBody><blockquote><table border=0 cellspacing=0 cellpadding=0 class="Prototype"><tr><td><table border=0 cellspacing=0 cellpadding=0><tr><td class="PBeforeParameters  prettyprint "nowrap>public function set config(</td><td class="PParameter  prettyprint " nowrap>configSet:</td><td class="PType  prettyprint " nowrap>&nbsp;XML</td><td class="PAfterParameters  prettyprint "nowrap>):void</td></tr></table></td></tr></table></blockquote><p>The configuration data for the Tor services binary.&nbsp; This data is parsed (to replace any metatags), then written to the application data directory to be used by the Tor services binary at startup.&nbsp; If TorControl is not being used to launch the Tor binary, this data is ignored.&nbsp; Additionally, once the Tor binary has been started, this data will be ignored unless Tor is directed to reload it.</p><h4 class=CHeading>Parameters</h4><table border=0 cellspacing=0 cellpadding=0 class=CDescriptionList><tr><td class=CDLEntry>configSet</td><td class=CDLDescription>The XML data to use for the Tor services binary.&nbsp; The format requires a single, top-level parent node (any name is acceptable), which contains a single CDATA section, which itself is the contents of the Tor binrary configration.&nbsp; See the TorControl configData property for an example, and refer to the Tor documentation for additional startup options.&nbsp; </td></tr></table></div></div></div>

<div class="CProperty"><div class=CTopic><h3 class=CTitle><a name="TorControl.config"></a>config</h3><div class=CBody><blockquote><table border=0 cellspacing=0 cellpadding=0 class="Prototype"><tr><td class="prettyprint">public function get config():XML</td></tr></table></blockquote></div></div></div>

<div class="CFunction"><div class=CTopic><h3 class=CTitle><a name="TorControl.getPasswordHash"></a>getPasswordHash</h3><div class=CBody><blockquote><table border=0 cellspacing=0 cellpadding=0 class="Prototype"><tr><td><table border=0 cellspacing=0 cellpadding=0><tr><td class="PBeforeParameters  prettyprint "nowrap>private function getPasswordHash(</td><td class="PParameter  prettyprint " nowrap>input:</td><td class="PType  prettyprint " nowrap>&nbsp;String</td><td class="PAfterParameters  prettyprint "nowrap>):void</td></tr></table></td></tr></table></blockquote></div></div></div>

<div class="CFunction"><div class=CTopic><h3 class=CTitle><a name="TorControl.onHashPassword"></a>onHashPassword</h3><div class=CBody><blockquote><table border=0 cellspacing=0 cellpadding=0 class="Prototype"><tr><td><table border=0 cellspacing=0 cellpadding=0><tr><td class="PBeforeParameters  prettyprint "nowrap>private function onHashPassword(</td><td class="PParameter  prettyprint " nowrap>eventObj:</td><td class="PType  prettyprint " nowrap>&nbsp;ProgressEvent</td><td class="PAfterParameters  prettyprint "nowrap>):void</td></tr></table></td></tr></table></blockquote></div></div></div>

<div class="CFunction"><div class=CTopic><h3 class=CTitle><a name="TorControl.connect"></a>connect</h3><div class=CBody><blockquote><table border=0 cellspacing=0 cellpadding=0 class="Prototype"><tr><td class="prettyprint">public function connect():void</td></tr></table></blockquote><p>Attempts to connect to the running Tor control process via pre-set (in constructor) socket settings.</p></div></div></div>

<div class="CFunction"><div class=CTopic><h3 class=CTitle><a name="TorControl.onTorControlReady"></a>onTorControlReady</h3><div class=CBody><blockquote><table border=0 cellspacing=0 cellpadding=0 class="Prototype"><tr><td><table border=0 cellspacing=0 cellpadding=0><tr><td class="PBeforeParameters  prettyprint "nowrap>private function onTorControlReady(</td><td class="PParameter  prettyprint " nowrap>...</td><td class="PType  prettyprint " nowrap>&nbsp;args</td><td class="PAfterParameters  prettyprint "nowrap>):void</td></tr></table></td></tr></table></blockquote><p>Invoked when the Tor process is ready to accept a connection (for example, the process was successfully launched).</p><h4 class=CHeading>Parameters</h4><table border=0 cellspacing=0 cellpadding=0 class=CDescriptionList><tr><td class=CDLEntry>param</td><td class=CDLDescription>  ... args Used internally to apply a startup delay.&nbsp; Set to true to bypass any startup delay (connect immediately).&nbsp; </td></tr></table></div></div></div>

<div class="CFunction"><div class=CTopic><h3 class=CTitle><a name="TorControl.disconnect"></a>disconnect</h3><div class=CBody><blockquote><table border=0 cellspacing=0 cellpadding=0 class="Prototype"><tr><td><table border=0 cellspacing=0 cellpadding=0><tr><td class="PBeforeParameters  prettyprint "nowrap>public function disconnect(</td><td class="PParameter  prettyprint " nowrap>shutdownService:</td><td class="PType  prettyprint " nowrap>&nbsp;Boolean</td><td class="PDefaultValuePrefix  prettyprint ">&nbsp;=&nbsp;</td><td class="PDefaultValue  prettyprint " width=100%>true</td><td class="PAfterParameters  prettyprint "nowrap>):void</td></tr></table></td></tr></table></blockquote><p>Disconnects from the Tor control socket.&nbsp; Note that the Tor service may still be running at this point.</p><h4 class=CHeading>Parameters</h4><table border=0 cellspacing=0 cellpadding=0 class=CDescriptionList><tr><td class=CDLEntry>param</td><td class=CDLDescription>  shutdownService Also attempts to shut down the running Tor services process if true.&nbsp; </td></tr></table></div></div></div>

<div class="CProperty"><div class=CTopic><h3 class=CTitle><a name="TorControl.launchServices"></a>launchServices</h3><div class=CBody><blockquote><table border=0 cellspacing=0 cellpadding=0 class="Prototype"><tr><td><table border=0 cellspacing=0 cellpadding=0><tr><td class="PBeforeParameters  prettyprint "nowrap>public function set launchServices(</td><td class="PParameter  prettyprint " nowrap>launchSet:</td><td class="PType  prettyprint " nowrap>&nbsp;Boolean</td><td class="PAfterParameters  prettyprint "nowrap>):void</td></tr></table></td></tr></table></blockquote><p>Enables (true) or disables (false) the automatic launching of the Tor services binary at startup.&nbsp; If you are NOT planning to use the included Tor binary (i.e. you will launch it manually yourself), make sure to set this value to false before calling &lt;code&gt;connect&lt;/code&gt;.</p></div></div></div>

<div class="CProperty"><div class=CTopic><h3 class=CTitle><a name="TorControl.launchServices"></a>launchServices</h3><div class=CBody><blockquote><table border=0 cellspacing=0 cellpadding=0 class="Prototype"><tr><td class="prettyprint">public function get launchServices():Boolean</td></tr></table></blockquote></div></div></div>

<div class="CFunction"><div class=CTopic><h3 class=CTitle><a name="TorControl.prepareTorProcess"></a>prepareTorProcess</h3><div class=CBody><blockquote><table border=0 cellspacing=0 cellpadding=0 class="Prototype"><tr><td class="prettyprint">public function prepareTorProcess():void</td></tr></table></blockquote><p>Prepares to launch the Tor process using supplied initialization data.</p></div></div></div>

<div class="CFunction"><div class=CTopic><h3 class=CTitle><a name="TorControl.launchTorProcess"></a>launchTorProcess</h3><div class=CBody><blockquote><table border=0 cellspacing=0 cellpadding=0 class="Prototype"><tr><td class="prettyprint">private function launchTorProcess():void</td></tr></table></blockquote><p>Attempts to launch the Tor process (binary).&nbsp; TorControl can communicate with a properly configured Tor process even if it didn&rsquo;t launch it.&nbsp; Developers can bypass this method altogether if the Tor process will be started manually.&nbsp; Be sure to update the TorControl &lt;code&gt;config&lt;/code&gt; property with any custom startup requirements.&nbsp; This function also starts listening to the Event.EXITING event on the native application object if the Tor process was successfully launched.</p></div></div></div>

<div class="CFunction"><div class=CTopic><h3 class=CTitle><a name="TorControl.stopTorProcess"></a>stopTorProcess</h3><div class=CBody><blockquote><table border=0 cellspacing=0 cellpadding=0 class="Prototype"><tr><td><table border=0 cellspacing=0 cellpadding=0><tr><td class="PBeforeParameters  prettyprint "nowrap>public function stopTorProcess(</td><td class="PParameter  prettyprint " nowrap>...</td><td class="PType  prettyprint " nowrap>&nbsp;args</td><td class="PAfterParameters  prettyprint "nowrap>):void</td></tr></table></td></tr></table></blockquote><p>Stops a running Tor process, if one was started by TorContol.&nbsp; This function also stops listening to the Event.EXITING event on the native application object.</p><h4 class=CHeading>Parameters</h4><table border=0 cellspacing=0 cellpadding=0 class=CDescriptionList><tr><td class=CDLEntry>param</td><td class=CDLDescription>  eventObj </td></tr></table></div></div></div>

<div class="CProperty"><div class=CTopic><h3 class=CTitle><a name="TorControl.controlIP"></a>controlIP</h3><div class=CBody><blockquote><table border=0 cellspacing=0 cellpadding=0 class="Prototype"><tr><td class="prettyprint">public static function get controlIP():String</td></tr></table></blockquote><p>The IP of the Tor control socket (usually 127.0.0.1).</p></div></div></div>

<div class="CProperty"><div class=CTopic><h3 class=CTitle><a name="TorControl.controlPort"></a>controlPort</h3><div class=CBody><blockquote><table border=0 cellspacing=0 cellpadding=0 class="Prototype"><tr><td class="prettyprint">public static function get controlPort():int</td></tr></table></blockquote><p>The port of the Tor control socket (usually 9151).</p></div></div></div>

<div class="CProperty"><div class=CTopic><h3 class=CTitle><a name="TorControl.SOCKSIP"></a>SOCKSIP</h3><div class=CBody><blockquote><table border=0 cellspacing=0 cellpadding=0 class="Prototype"><tr><td class="prettyprint">public static function get SOCKSIP():String</td></tr></table></blockquote><p>The IP of the Tor SOCKS proxy socket (usually 127.0.0.1).</p></div></div></div>

<div class="CProperty"><div class=CTopic><h3 class=CTitle><a name="TorControl.SOCKSPort"></a>SOCKSPort</h3><div class=CBody><blockquote><table border=0 cellspacing=0 cellpadding=0 class="Prototype"><tr><td class="prettyprint">public static function get SOCKSPort():int</td></tr></table></blockquote><p>The port of the Tor SOCKS proxy socket (usually 1080).</p></div></div></div>

<div class="CProperty"><div class=CTopic><h3 class=CTitle><a name="TorControl.connected"></a>connected</h3><div class=CBody><blockquote><table border=0 cellspacing=0 cellpadding=0 class="Prototype"><tr><td class="prettyprint">public static function get connected():Boolean</td></tr></table></blockquote><p>The status of the Tor control connection: true=connected, false=not connected</p></div></div></div>

<div class="CProperty"><div class=CTopic><h3 class=CTitle><a name="TorControl.authenticated"></a>authenticated</h3><div class=CBody><blockquote><table border=0 cellspacing=0 cellpadding=0 class="Prototype"><tr><td class="prettyprint">public static function get authenticated():Boolean</td></tr></table></blockquote><p>The authentication status of the Tor control connection: true=authenticated, false=not authenticated</p></div></div></div>

<div class="CFunction"><div class=CTopic><h3 class=CTitle><a name="TorControl.establishNewCircuit"></a>establishNewCircuit</h3><div class=CBody><blockquote><table border=0 cellspacing=0 cellpadding=0 class="Prototype"><tr><td class="prettyprint">public function establishNewCircuit():void</td></tr></table></blockquote><p>Establish a new Tor circuit through which future requests will be tunneled.&nbsp; Any existing tunnels will continue to use their existing circuits until disconnected.</p></div></div></div>

<div class="CFunction"><div class=CTopic><h3 class=CTitle><a name="TorControl.generateConfigFile"></a>generateConfigFile</h3><div class=CBody><blockquote><table border=0 cellspacing=0 cellpadding=0 class="Prototype"><tr><td><table border=0 cellspacing=0 cellpadding=0><tr><td class="PBeforeParameters  prettyprint "nowrap>private function generateConfigFile(</td><td class="PParameter  prettyprint " nowrap>configFile:</td><td class="PType  prettyprint " nowrap>&nbsp;File</td><td class="PAfterParameters  prettyprint "nowrap>):void</td></tr></table></td></tr></table></blockquote><p>Generates the Tor config file from settings derived from various class properties (see near top of this class declaration).</p><h4 class=CHeading>Parameters</h4><table border=0 cellspacing=0 cellpadding=0 class=CDescriptionList><tr><td class=CDLEntry>param</td><td class=CDLDescription>  configFile The file to generate the config file to (output).&nbsp; This path should also be supplied to the Tor process at startup, if using TorControl to launch the Tor process.&nbsp; </td></tr></table></div></div></div>

<div class="CFunction"><div class=CTopic><h3 class=CTitle><a name="TorControl.onStandardOutData"></a>onStandardOutData</h3><div class=CBody><blockquote><table border=0 cellspacing=0 cellpadding=0 class="Prototype"><tr><td><table border=0 cellspacing=0 cellpadding=0><tr><td class="PBeforeParameters  prettyprint "nowrap>private function onStandardOutData(</td><td class="PParameter  prettyprint " nowrap>eventObj:</td><td class="PType  prettyprint " nowrap>&nbsp;ProgressEvent</td><td class="PAfterParameters  prettyprint "nowrap>):void</td></tr></table></td></tr></table></blockquote><p>Handles STDOUT messages from the running Tor process.&nbsp; This ONLY works if TorControl is used to launch the Tor process.</p><h4 class=CHeading>Parameters</h4><table border=0 cellspacing=0 cellpadding=0 class=CDescriptionList><tr><td class=CDLEntry>param</td><td class=CDLDescription>  eventObj A ProgressEvent object.&nbsp; </td></tr></table></div></div></div>

<div class="CFunction"><div class=CTopic><h3 class=CTitle><a name="TorControl.onConnect"></a>onConnect</h3><div class=CBody><blockquote><table border=0 cellspacing=0 cellpadding=0 class="Prototype"><tr><td><table border=0 cellspacing=0 cellpadding=0><tr><td class="PBeforeParameters  prettyprint "nowrap>private function onConnect(</td><td class="PParameter  prettyprint " nowrap>eventObj:</td><td class="PType  prettyprint " nowrap>&nbsp;Event</td><td class="PAfterParameters  prettyprint "nowrap>):void</td></tr></table></td></tr></table></blockquote><p>Invoked when TorControl successfully connects to the (presumably) Tor control socket.&nbsp; Only after authentication should the socket be assumed to be a proper Tor control socket.</p><h4 class=CHeading>Parameters</h4><table border=0 cellspacing=0 cellpadding=0 class=CDescriptionList><tr><td class=CDLEntry>param</td><td class=CDLDescription>  eventObj An Event object.&nbsp; </td></tr></table></div></div></div>

<div class="CFunction"><div class=CTopic><h3 class=CTitle><a name="TorControl.onConnectError"></a>onConnectError</h3><div class=CBody><blockquote><table border=0 cellspacing=0 cellpadding=0 class="Prototype"><tr><td><table border=0 cellspacing=0 cellpadding=0><tr><td class="PBeforeParameters  prettyprint "nowrap>private function onConnectError(</td><td class="PParameter  prettyprint " nowrap>eventObj:</td><td class="PType  prettyprint " nowrap>&nbsp;IOErrorEvent</td><td class="PAfterParameters  prettyprint "nowrap>):void</td></tr></table></td></tr></table></blockquote><p>Invoked when TorControl receives an IOErrorEvent.</p><h4 class=CHeading>Parameters</h4><table border=0 cellspacing=0 cellpadding=0 class=CDescriptionList><tr><td class=CDLEntry>param</td><td class=CDLDescription>  eventObj An IOErrorEvent object.&nbsp; </td></tr></table></div></div></div>

<div class="CFunction"><div class=CTopic><h3 class=CTitle><a name="TorControl.onConnectSecurityError"></a>onConnectSecurityError</h3><div class=CBody><blockquote><table border=0 cellspacing=0 cellpadding=0 class="Prototype"><tr><td><table border=0 cellspacing=0 cellpadding=0><tr><td class="PBeforeParameters  prettyprint "nowrap>private function onConnectSecurityError(</td><td class="PParameter  prettyprint " nowrap>eventObj:</td><td class="PType  prettyprint " nowrap>&nbsp;IOErrorEvent</td><td class="PAfterParameters  prettyprint "nowrap>):void</td></tr></table></td></tr></table></blockquote><p>Invoked when TorControl receives an SecurityErrorEvent.</p><h4 class=CHeading>Parameters</h4><table border=0 cellspacing=0 cellpadding=0 class=CDescriptionList><tr><td class=CDLEntry>param</td><td class=CDLDescription>  eventObj An SecurityErrorEvent object.&nbsp; </td></tr></table></div></div></div>

<div class="CFunction"><div class=CTopic><h3 class=CTitle><a name="TorControl.authenticate"></a>authenticate</h3><div class=CBody><blockquote><table border=0 cellspacing=0 cellpadding=0 class="Prototype"><tr><td class="prettyprint">private function authenticate():void</td></tr></table></blockquote><p>Send the authentication message to the Tor control socket.</p></div></div></div>

<div class="CProperty"><div class=CTopic><h3 class=CTitle><a name="TorControl.usePasswordAuthentication"></a>usePasswordAuthentication</h3><div class=CBody><blockquote><table border=0 cellspacing=0 cellpadding=0 class="Prototype"><tr><td class="prettyprint">private function get usePasswordAuthentication():Boolean</td></tr></table></blockquote></div></div></div>

<div class="CFunction"><div class=CTopic><h3 class=CTitle><a name="TorControl.sendRawControlMessage"></a>sendRawControlMessage</h3><div class=CBody><blockquote><table border=0 cellspacing=0 cellpadding=0 class="Prototype"><tr><td><table border=0 cellspacing=0 cellpadding=0><tr><td class="PBeforeParameters  prettyprint "nowrap>public function sendRawControlMessage(</td><td class="PParameter  prettyprint " nowrap>msg:</td><td class="PType  prettyprint " nowrap>&nbsp;String</td><td class="PAfterParameters  prettyprint "nowrap>):Boolean</td></tr></table></td></tr></table></blockquote><p>Sends a raw control message to the connected and authenticated control socket.&nbsp; The message must be a properly formatted Tor v1 Protocol string (https://gitweb.torproject.org/torspec.git?a=blob_plain;hb=HEAD;f=control-spec.txt).</p><h4 class=CHeading>Parameters</h4><table border=0 cellspacing=0 cellpadding=0 class=CDescriptionList><tr><td class=CDLEntry>param</td><td class=CDLDescription>  msg A Tor v1 Protocol-formatted control message (WITHOUT trailing linefeeds) </td></tr></table><h4 class=CHeading>Returns</h4><p>True if the message was sent successfully to the socket, false if the send failed (for example, not connected or authenticated).&nbsp; </p></div></div></div>

<div class="CFunction"><div class=CTopic><h3 class=CTitle><a name="TorControl.addEventListener"></a>addEventListener</h3><div class=CBody><blockquote><table border=0 cellspacing=0 cellpadding=0 class="Prototype"><tr><td><table border=0 cellspacing=0 cellpadding=0><tr><td class="PBeforeParameters  prettyprint "colspan=5>override public function addEventListener(</td></tr><tr><td>&nbsp;&nbsp;&nbsp;</td><td class="PParameter  prettyprint " nowrap>type:</td><td class="PType  prettyprint " nowrap>&nbsp;String,</td><td class="PDefaultValuePrefix  prettyprint ">&nbsp;&nbsp;</td><td class="PDefaultValue  prettyprint " width=100%></td></tr><tr><td>&nbsp;&nbsp;&nbsp;</td><td class="PParameter  prettyprint " nowrap>listener:</td><td class="PType  prettyprint " nowrap>&nbsp;Function,</td><td class="PDefaultValuePrefix  prettyprint ">&nbsp;&nbsp;</td><td class="PDefaultValue  prettyprint " width=100%></td></tr><tr><td>&nbsp;&nbsp;&nbsp;</td><td class="PParameter  prettyprint " nowrap>useCapture:</td><td class="PType  prettyprint " nowrap>&nbsp;Boolean</td><td class="PDefaultValuePrefix  prettyprint ">&nbsp;=&nbsp;</td><td class="PDefaultValue  prettyprint " width=100%>false,</td></tr><tr><td>&nbsp;&nbsp;&nbsp;</td><td class="PParameter  prettyprint " nowrap>priority:</td><td class="PType  prettyprint " nowrap>&nbsp;int</td><td class="PDefaultValuePrefix  prettyprint ">&nbsp;=&nbsp;</td><td class="PDefaultValue  prettyprint " width=100%>0,</td></tr><tr><td>&nbsp;&nbsp;&nbsp;</td><td class="PParameter  prettyprint " nowrap>useWeakReference:</td><td class="PType  prettyprint " nowrap>&nbsp;Boolean</td><td class="PDefaultValuePrefix  prettyprint ">&nbsp;=&nbsp;</td><td class="PDefaultValue  prettyprint " width=100%>false</td></tr><tr><td class="PAfterParameters  prettyprint "colspan=5>):void</td></tr></table></td></tr></table></blockquote></div></div></div>

<div class="CFunction"><div class=CTopic><h3 class=CTitle><a name="TorControl.enableTorEvent"></a>enableTorEvent</h3><div class=CBody><blockquote><table border=0 cellspacing=0 cellpadding=0 class="Prototype"><tr><td><table border=0 cellspacing=0 cellpadding=0><tr><td class="PBeforeParameters  prettyprint "nowrap>private function enableTorEvent(</td><td class="PParameter  prettyprint " nowrap>eventType:</td><td class="PType  prettyprint " nowrap>&nbsp;String</td><td class="PAfterParameters  prettyprint "nowrap>):void</td></tr></table></td></tr></table></blockquote><p>Enable a Tor control event (sent from the running process).</p><h4 class=CHeading>Parameters</h4><table border=0 cellspacing=0 cellpadding=0 class=CDescriptionList><tr><td class=CDLEntry>param</td><td class=CDLDescription>  eventType The internal Tor event type to listen for in a TorControlEvent.ONEVENT event (eee note below for more information).&nbsp; </td></tr></table><h4 class=CHeading>See Also</h4><p>//gitweb.torproject.org/torspec.git?a=blob_plain;hb=HEAD;f=control-spec.txt (Section &ldquo;4.1.&nbsp; Asynchronous events) (https:)</p></div></div></div>

<div class="CFunction"><div class=CTopic><h3 class=CTitle><a name="TorControl.disableTorEvent"></a>disableTorEvent</h3><div class=CBody><blockquote><table border=0 cellspacing=0 cellpadding=0 class="Prototype"><tr><td><table border=0 cellspacing=0 cellpadding=0><tr><td class="PBeforeParameters  prettyprint "nowrap>private function disableTorEvent(</td><td class="PParameter  prettyprint " nowrap>eventType:</td><td class="PType  prettyprint " nowrap>&nbsp;String</td><td class="PAfterParameters  prettyprint "nowrap>):void</td></tr></table></td></tr></table></blockquote><p>Disable a Tor control event (sent from the running process).</p><h4 class=CHeading>Parameters</h4><table border=0 cellspacing=0 cellpadding=0 class=CDescriptionList><tr><td class=CDLEntry>param</td><td class=CDLDescription>  eventType The internal Tor event type to stop listening for in a TorControlEvent.ONEVENT event (eee note below for more information).&nbsp; </td></tr></table><h4 class=CHeading>See Also</h4><p>//gitweb.torproject.org/torspec.git?a=blob_plain;hb=HEAD;f=control-spec.txt (Section &ldquo;4.1.&nbsp; Asynchronous events) (https:)</p></div></div></div>

<div class="CFunction"><div class=CTopic><h3 class=CTitle><a name="TorControl.disableAllTorEvents"></a>disableAllTorEvents</h3><div class=CBody><blockquote><table border=0 cellspacing=0 cellpadding=0 class="Prototype"><tr><td class="prettyprint">private function disableAllTorEvents():void</td></tr></table></blockquote><p>Disables all Tor control events (sent from the running process).</p></div></div></div>

<div class="CProperty"><div class=CTopic><h3 class=CTitle><a name="TorControl.enabledAsyncEventList"></a>enabledAsyncEventList</h3><div class=CBody><blockquote><table border=0 cellspacing=0 cellpadding=0 class="Prototype"><tr><td class="prettyprint">private function get enabledAsyncEventList():String</td></tr></table></blockquote></div></div></div>

<div class="CFunction"><div class=CTopic><h3 class=CTitle><a name="TorControl.addUniqueAsyncEvent"></a>addUniqueAsyncEvent</h3><div class=CBody><blockquote><table border=0 cellspacing=0 cellpadding=0 class="Prototype"><tr><td><table border=0 cellspacing=0 cellpadding=0><tr><td class="PBeforeParameters  prettyprint "nowrap>private function addUniqueAsyncEvent(</td><td class="PParameter  prettyprint " nowrap>eventType:</td><td class="PType  prettyprint " nowrap>&nbsp;String</td><td class="PAfterParameters  prettyprint "nowrap>):void</td></tr></table></td></tr></table></blockquote></div></div></div>

<div class="CFunction"><div class=CTopic><h3 class=CTitle><a name="TorControl.removeAsyncEvent"></a>removeAsyncEvent</h3><div class=CBody><blockquote><table border=0 cellspacing=0 cellpadding=0 class="Prototype"><tr><td><table border=0 cellspacing=0 cellpadding=0><tr><td class="PBeforeParameters  prettyprint "nowrap>private function removeAsyncEvent(</td><td class="PParameter  prettyprint " nowrap>eventType:</td><td class="PType  prettyprint " nowrap>&nbsp;String</td><td class="PAfterParameters  prettyprint "nowrap>):void</td></tr></table></td></tr></table></blockquote></div></div></div>

<div class="CFunction"><div class=CTopic><h3 class=CTitle><a name="TorControl.onData"></a>onData</h3><div class=CBody><blockquote><table border=0 cellspacing=0 cellpadding=0 class="Prototype"><tr><td><table border=0 cellspacing=0 cellpadding=0><tr><td class="PBeforeParameters  prettyprint "nowrap>private function onData(</td><td class="PParameter  prettyprint " nowrap>eventObj:</td><td class="PType  prettyprint " nowrap>&nbsp;ProgressEvent</td><td class="PAfterParameters  prettyprint "nowrap>):void</td></tr></table></td></tr></table></blockquote></div></div></div>

<div class="CFunction"><div class=CTopic><h3 class=CTitle><a name="TorControl.isMultilineMessage"></a>isMultilineMessage</h3><div class=CBody><blockquote><table border=0 cellspacing=0 cellpadding=0 class="Prototype"><tr><td><table border=0 cellspacing=0 cellpadding=0><tr><td class="PBeforeParameters  prettyprint "nowrap>private function isMultilineMessage(</td><td class="PParameter  prettyprint " nowrap>separator:</td><td class="PType  prettyprint " nowrap>&nbsp;String</td><td class="PAfterParameters  prettyprint "nowrap>):Boolean</td></tr></table></td></tr></table></blockquote></div></div></div>

<div class="CFunction"><div class=CTopic><h3 class=CTitle><a name="TorControl.dispatchAsynchTorEvent"></a>dispatchAsynchTorEvent</h3><div class=CBody><blockquote><table border=0 cellspacing=0 cellpadding=0 class="Prototype"><tr><td><table border=0 cellspacing=0 cellpadding=0><tr><td class="PBeforeParameters  prettyprint "nowrap>private function dispatchAsynchTorEvent(</td><td class="PParameter  prettyprint " nowrap>msgObj:</td><td class="PType  prettyprint " nowrap>&nbsp;Object</td><td class="PAfterParameters  prettyprint "nowrap>):void</td></tr></table></td></tr></table></blockquote></div></div></div>

<div class="CFunction"><div class=CTopic><h3 class=CTitle><a name="TorControl.dispatchTorResponse"></a>dispatchTorResponse</h3><div class=CBody><blockquote><table border=0 cellspacing=0 cellpadding=0 class="Prototype"><tr><td><table border=0 cellspacing=0 cellpadding=0><tr><td class="PBeforeParameters  prettyprint "nowrap>private function dispatchTorResponse(</td><td class="PParameter  prettyprint " nowrap>msgObj:</td><td class="PType  prettyprint " nowrap>&nbsp;Object</td><td class="PAfterParameters  prettyprint "nowrap>):void</td></tr></table></td></tr></table></blockquote></div></div></div>

<div class="CFunction"><div class=CTopic><h3 class=CTitle><a name="TorControl.parseReceivedData"></a>parseReceivedData</h3><div class=CBody><blockquote><table border=0 cellspacing=0 cellpadding=0 class="Prototype"><tr><td><table border=0 cellspacing=0 cellpadding=0><tr><td class="PBeforeParameters  prettyprint "nowrap>private function parseReceivedData(</td><td class="PParameter  prettyprint " nowrap>dataStr:</td><td class="PType  prettyprint " nowrap>&nbsp;String</td><td class="PAfterParameters  prettyprint "nowrap>):Object</td></tr></table></td></tr></table></blockquote></div></div></div>

<div class="CFunction"><div class=CTopic><h3 class=CTitle><a name="TorControl.replaceMeta"></a>replaceMeta</h3><div class=CBody><blockquote><table border=0 cellspacing=0 cellpadding=0 class="Prototype"><tr><td><table border=0 cellspacing=0 cellpadding=0><tr><td class="PBeforeParameters  prettyprint "nowrap>private function replaceMeta(</td><td class="PParameter  prettyprint " nowrap>input:</td><td class="PType  prettyprint " nowrap>&nbsp;String,</td></tr><tr><td></td><td class="PParameter  prettyprint " nowrap>meta:</td><td class="PType  prettyprint " nowrap>&nbsp;String,</td></tr><tr><td></td><td class="PParameter  prettyprint " nowrap>replace:</td><td class="PType  prettyprint " nowrap>&nbsp;String</td><td class="PAfterParameters  prettyprint "nowrap>):String</td></tr></table></td></tr></table></blockquote></div></div></div>

</div><!--Content-->


<div id=Footer><a href="http://www.naturaldocs.org">Generated by Natural Docs</a></div><!--Footer-->


<div id=Menu><div class=MEntry><div class=MFile><a href="../../Main-as.html">Main</a></div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent2')">Org</a><div class=MGroupContent id=MGroupContent2><div class=MEntry><div class=MFile><a href="utils/LoaderConfig-as.html">LoaderConfig</a></div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent1')">Model</a><div class=MGroupContent id=MGroupContent1><div class=MEntry><div class=MFile><a href="model/HTTPCookie-as.html">HTTPCookie</a></div></div><div class=MEntry><div class=MFile><a href="model/HTTPResponse-as.html">HTTPResponse</a></div></div><div class=MEntry><div class=MFile><a href="model/HTTPResponseHeader-as.html">HTTPResponseHeader</a></div></div><div class=MEntry><div class=MFile><a href="model/SOCKS5Model-as.html">SOCKS5Model</a></div></div><div class=MEntry><div class=MFile><a href="model/TorASError-as.html">TorASError</a></div></div><div class=MEntry><div class=MFile><a href="model/TorControlCircuit-as.html">TorControlCircuit</a></div></div><div class=MEntry><div class=MFile><a href="model/TorControlCircuitHop-as.html">TorControlCircuitHop</a></div></div><div class=MEntry><div class=MFile><a href="model/TorControlModel-as.html">TorControlModel</a></div></div></div></div></div><div class=MEntry><div class=MFile><a href="SOCKS5Tunnel-as.html">SOCKS5Tunnel</a></div></div><div class=MEntry><div class=MFile><a href="events/SOCKS5TunnelEvent-as.html">SOCKS5TunnelEvent</a></div></div><div class=MEntry><div class=MFile id=MSelected>TorControl</div></div><div class=MEntry><div class=MFile><a href="events/TorControlEvent-as.html">TorControlEvent</a></div></div><div class=MEntry><div class=MFile><a href="utils/URLUtil-as.html">URLUtil</a></div></div></div></div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent3')">Demos</a><div class=MGroupContent id=MGroupContent3><div class=MEntry><div class=MFile><a href="../../demos/CircuitsDemo-as.html">CircuitsDemo</a></div></div><div class=MEntry><div class=MFile><a href="../../demos/HTTPLoadDemo-as.html">HTTPLoadDemo</a></div></div><div class=MEntry><div class=MFile><a href="../../demos/HTTPSLoadDemo-as.html">HTTPSLoadDemo</a></div></div></div></div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent13')">Com</a><div class=MGroupContent id=MGroupContent13><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent9')">Crypto</a><div class=MGroupContent id=MGroupContent9><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent4')">Cert</a><div class=MGroupContent id=MGroupContent4><div class=MEntry><div class=MFile><a href="../../com/hurlant/crypto/cert/MozillaRootCertificates-as.html">MozillaRootCertificates</a></div></div><div class=MEntry><div class=MFile><a href="../../com/hurlant/crypto/cert/X509Certificate-as.html">X509Certificate</a></div></div><div class=MEntry><div class=MFile><a href="../../com/hurlant/crypto/cert/X509CertificateCollection-as.html">X509CertificateCollection</a></div></div></div></div></div><div class=MEntry><div class=MFile><a href="../../com/hurlant/crypto/Crypto-as.html">Crypto</a></div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent5')">Hash</a><div class=MGroupContent id=MGroupContent5><div class=MEntry><div class=MFile><a href="../../com/hurlant/crypto/hash/HMAC-as.html">HMAC</a></div></div><div class=MEntry><div class=MFile><a href="../../com/hurlant/crypto/hash/IHash-as.html">IHash</a></div></div><div class=MEntry><div class=MFile><a href="../../com/hurlant/crypto/hash/MD2-as.html">MD2</a></div></div><div class=MEntry><div class=MFile><a href="../../com/hurlant/crypto/hash/MD5-as.html">MD5</a></div></div><div class=MEntry><div class=MFile><a href="../../com/hurlant/crypto/hash/SHA1-as.html">SHA1</a></div></div><div class=MEntry><div class=MFile><a href="../../com/hurlant/crypto/hash/SHA224-as.html">SHA224</a></div></div><div class=MEntry><div class=MFile><a href="../../com/hurlant/crypto/hash/SHA256-as.html">SHA256</a></div></div><div class=MEntry><div class=MFile><a href="../../com/hurlant/crypto/hash/SHABase-as.html">SHABase</a></div></div></div></div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent6')">Prng</a><div class=MGroupContent id=MGroupContent6><div class=MEntry><div class=MFile><a href="../../com/hurlant/crypto/prng/ARC4-as.html">ARC4</a></div></div><div class=MEntry><div class=MFile><a href="../../com/hurlant/crypto/prng/IPRNG-as.html">IPRNG</a></div></div><div class=MEntry><div class=MFile><a href="../../com/hurlant/crypto/prng/Random-as.html">Random</a></div></div><div class=MEntry><div class=MFile><a href="../../com/hurlant/crypto/prng/TLSPRF-as.html">TLSPRF</a></div></div></div></div></div><div class=MEntry><div class=MFile><a href="../../com/hurlant/crypto/rsa/RSAKey-as.html">RSAKey</a></div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent7')">Symmetric</a><div class=MGroupContent id=MGroupContent7><div class=MEntry><div class=MFile><a href="../../com/hurlant/crypto/symmetric/AESKey-as.html">AESKey</a></div></div><div class=MEntry><div class=MFile><a href="../../com/hurlant/crypto/symmetric/BlowFishKey-as.html">BlowFishKey</a></div></div><div class=MEntry><div class=MFile><a href="../../com/hurlant/crypto/symmetric/CBCMode-as.html">CBCMode</a></div></div><div class=MEntry><div class=MFile><a href="../../com/hurlant/crypto/symmetric/CFB8Mode-as.html">CFB8Mode</a></div></div><div class=MEntry><div class=MFile><a href="../../com/hurlant/crypto/symmetric/CFBMode-as.html">CFBMode</a></div></div><div class=MEntry><div class=MFile><a href="../../com/hurlant/crypto/symmetric/CTRMode-as.html">CTRMode</a></div></div><div class=MEntry><div class=MFile><a href="../../com/hurlant/crypto/symmetric/DESKey-as.html">DESKey</a></div></div><div class=MEntry><div class=MFile><a href="../../com/hurlant/crypto/symmetric/ECBMode-as.html">ECBMode</a></div></div><div class=MEntry><div class=MFile><a href="../../com/hurlant/crypto/symmetric/ICipher-as.html">ICipher</a></div></div><div class=MEntry><div class=MFile><a href="../../com/hurlant/crypto/symmetric/IMode-as.html">IMode</a></div></div><div class=MEntry><div class=MFile><a href="../../com/hurlant/crypto/symmetric/IPad-as.html">IPad</a></div></div><div class=MEntry><div class=MFile><a href="../../com/hurlant/crypto/symmetric/IStreamCipher-as.html">IStreamCipher</a></div></div><div class=MEntry><div class=MFile><a href="../../com/hurlant/crypto/symmetric/ISymmetricKey-as.html">ISymmetricKey</a></div></div><div class=MEntry><div class=MFile><a href="../../com/hurlant/crypto/symmetric/IVMode-as.html">IVMode</a></div></div><div class=MEntry><div class=MFile><a href="../../com/hurlant/crypto/symmetric/NullPad-as.html">NullPad</a></div></div><div class=MEntry><div class=MFile><a href="../../com/hurlant/crypto/symmetric/OFBMode-as.html">OFBMode</a></div></div><div class=MEntry><div class=MFile><a href="../../com/hurlant/crypto/symmetric/PKCS5-as.html">PKCS5</a></div></div><div class=MEntry><div class=MFile><a href="../../com/hurlant/crypto/symmetric/SimpleIVMode-as.html">SimpleIVMode</a></div></div><div class=MEntry><div class=MFile><a href="../../com/hurlant/crypto/symmetric/TLSPad-as.html">TLSPad</a></div></div><div class=MEntry><div class=MFile><a href="../../com/hurlant/crypto/symmetric/TripleDESKey-as.html">TripleDESKey</a></div></div><div class=MEntry><div class=MFile><a href="../../com/hurlant/crypto/symmetric/XTeaKey-as.html">XTeaKey</a></div></div></div></div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent8')">Tls</a><div class=MGroupContent id=MGroupContent8><div class=MEntry><div class=MFile><a href="../../com/hurlant/crypto/tls/BulkCiphers-as.html">BulkCiphers</a></div></div><div class=MEntry><div class=MFile><a href="../../com/hurlant/crypto/tls/CipherSuites-as.html">CipherSuites</a></div></div><div class=MEntry><div class=MFile><a href="../../com/hurlant/crypto/tls/KeyExchanges-as.html">KeyExchanges</a></div></div><div class=MEntry><div class=MFile><a href="../../com/hurlant/crypto/tls/MACs-as.html">MACs</a></div></div><div class=MEntry><div class=MFile><a href="../../com/hurlant/crypto/tls/TLSConfig-as.html">TLSConfig</a></div></div><div class=MEntry><div class=MFile><a href="../../com/hurlant/crypto/tls/TLSConnectionState-as.html">TLSConnectionState</a></div></div><div class=MEntry><div class=MFile><a href="../../com/hurlant/crypto/tls/TLSEngine-as.html">TLSEngine</a></div></div><div class=MEntry><div class=MFile><a href="../../com/hurlant/crypto/tls/TLSError-as.html">TLSError</a></div></div><div class=MEntry><div class=MFile><a href="../../com/hurlant/crypto/tls/TLSEvent-as.html">TLSEvent</a></div></div><div class=MEntry><div class=MFile><a href="../../com/hurlant/crypto/tls/TLSSecurityParameters-as.html">TLSSecurityParameters</a></div></div><div class=MEntry><div class=MFile><a href="../../com/hurlant/crypto/tls/TLSSocket-as.html">TLSSocket</a></div></div><div class=MEntry><div class=MFile><a href="../../com/hurlant/crypto/tls/TLSTest-as.html">TLSTest</a></div></div></div></div></div></div></div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent10')">Math</a><div class=MGroupContent id=MGroupContent10><div class=MEntry><div class=MFile><a href="../../com/hurlant/math/BarrettReduction-as.html">BarrettReduction</a></div></div><div class=MEntry><div class=MFile><a href="../../com/hurlant/math/BigInteger-as.html">BigInteger</a></div></div><div class=MEntry><div class=MFile><a href="../../com/hurlant/math/ClassicReduction-as.html">ClassicReduction</a></div></div><div class=MEntry><div class=MFile><a href="../../com/hurlant/math/IReduction-as.html">IReduction</a></div></div><div class=MEntry><div class=MFile><a href="../../com/hurlant/math/MontgomeryReduction-as.html">MontgomeryReduction</a></div></div><div class=MEntry><div class=MFile><a href="../../com/hurlant/math/NullReduction-as.html">NullReduction</a></div></div></div></div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent12')">Util</a><div class=MGroupContent id=MGroupContent12><div class=MEntry><div class=MFile><a href="../../com/hurlant/util/ArrayUtil-as.html">ArrayUtil</a></div></div><div class=MEntry><div class=MFile><a href="../../com/hurlant/util/Base64-as.html">Base64</a></div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent11')">Der</a><div class=MGroupContent id=MGroupContent11><div class=MEntry><div class=MFile><a href="../../com/hurlant/util/der/ByteString-as.html">ByteString</a></div></div><div class=MEntry><div class=MFile><a href="../../com/hurlant/util/der/DER-as.html">DER</a></div></div><div class=MEntry><div class=MFile><a href="../../com/hurlant/util/der/IAsn1Type-as.html">IAsn1Type</a></div></div><div class=MEntry><div class=MFile><a href="../../com/hurlant/util/der/Integer-as.html">Integer</a></div></div><div class=MEntry><div class=MFile><a href="../../com/hurlant/util/der/ObjectIdentifier-as.html">ObjectIdentifier</a></div></div><div class=MEntry><div class=MFile><a href="../../com/hurlant/util/der/OID-as.html">OID</a></div></div><div class=MEntry><div class=MFile><a href="../../com/hurlant/util/der/PEM-as.html">PEM</a></div></div><div class=MEntry><div class=MFile><a href="../../com/hurlant/util/der/PrintableString-as.html">PrintableString</a></div></div><div class=MEntry><div class=MFile><a href="../../com/hurlant/util/der/Sequence-as.html">Sequence</a></div></div><div class=MEntry><div class=MFile><a href="../../com/hurlant/util/der/Set-as.html">Set</a></div></div><div class=MEntry><div class=MFile><a href="../../com/hurlant/util/der/Type-as.html">Type</a></div></div><div class=MEntry><div class=MFile><a href="../../com/hurlant/util/der/UTCTime-as.html">UTCTime</a></div></div></div></div></div><div class=MEntry><div class=MFile><a href="../../com/hurlant/util/Hex-as.html">Hex</a></div></div><div class=MEntry><div class=MFile><a href="../../com/hurlant/util/Memory-as.html">Memory</a></div></div></div></div></div></div></div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent14')">Index</a><div class=MGroupContent id=MGroupContent14><div class=MEntry><div class=MIndex><a href="../../../index/Classes.html">Classes</a></div></div><div class=MEntry><div class=MIndex><a href="../../../index/Constants.html">Constants</a></div></div><div class=MEntry><div class=MIndex><a href="../../../index/General.html">Everything</a></div></div><div class=MEntry><div class=MIndex><a href="../../../index/Functions.html">Functions</a></div></div><div class=MEntry><div class=MIndex><a href="../../../index/Interfaces.html">Interfaces</a></div></div><div class=MEntry><div class=MIndex><a href="../../../index/Properties.html">Properties</a></div></div><div class=MEntry><div class=MIndex><a href="../../../index/Variables.html">Variables</a></div></div></div></div></div><script type="text/javascript"><!--
var searchPanel = new SearchPanel("searchPanel", "HTML", "../../../search");
--></script><div id=MSearchPanel class=MSearchPanelInactive><input type=text id=MSearchField value=Search onFocus="searchPanel.OnSearchFieldFocus(true)" onBlur="searchPanel.OnSearchFieldFocus(false)" onKeyUp="searchPanel.OnSearchFieldChange()"><select id=MSearchType onFocus="searchPanel.OnSearchTypeFocus(true)" onBlur="searchPanel.OnSearchTypeFocus(false)" onChange="searchPanel.OnSearchTypeChange()"><option  id=MSearchEverything selected value="General">Everything</option><option value="Classes">Classes</option><option value="Constants">Constants</option><option value="Functions">Functions</option><option value="Interfaces">Interfaces</option><option value="Properties">Properties</option><option value="Variables">Variables</option></select></div><script language=JavaScript><!--
HideAllBut([2, 1], 15);// --></script></div><!--Menu-->



<!--START_ND_TOOLTIPS-->
<div class=CToolTip id="tt1"><div class=CVariable><blockquote><table border=0 cellspacing=0 cellpadding=0 class="Prototype"><tr><td class="prettyprint">private static var torProcess: NativeProcess</td></tr></table></blockquote></div></div><div class=CToolTip id="tt2"><div class=CVariable><blockquote><table border=0 cellspacing=0 cellpadding=0 class="Prototype"><tr><td class="prettyprint">private var _launchServices: Boolean</td></tr></table></blockquote></div></div><div class=CToolTip id="tt3"><div class=CConstant><blockquote><table border=0 cellspacing=0 cellpadding=0 class="Prototype"><tr><td class="prettyprint">private static const defaultControlIP: String</td></tr></table></blockquote></div></div><div class=CToolTip id="tt4"><div class=CConstant><blockquote><table border=0 cellspacing=0 cellpadding=0 class="Prototype"><tr><td class="prettyprint">private static const defaultControlPort: int</td></tr></table></blockquote></div></div><div class=CToolTip id="tt5"><div class=CConstant><blockquote><table border=0 cellspacing=0 cellpadding=0 class="Prototype"><tr><td class="prettyprint">private static const defaultSOCKSIP: String</td></tr></table></blockquote></div></div><div class=CToolTip id="tt6"><div class=CConstant><blockquote><table border=0 cellspacing=0 cellpadding=0 class="Prototype"><tr><td class="prettyprint">private static const defaultSOCKSPort: int</td></tr></table></blockquote></div></div><div class=CToolTip id="tt7"><div class=CVariable><blockquote><table border=0 cellspacing=0 cellpadding=0 class="Prototype"><tr><td class="prettyprint">private static var _controlIP: String</td></tr></table></blockquote></div></div><div class=CToolTip id="tt8"><div class=CVariable><blockquote><table border=0 cellspacing=0 cellpadding=0 class="Prototype"><tr><td class="prettyprint">private static var _controlPort: int</td></tr></table></blockquote></div></div><div class=CToolTip id="tt9"><div class=CVariable><blockquote><table border=0 cellspacing=0 cellpadding=0 class="Prototype"><tr><td class="prettyprint">private static var _SOCKSIP: String</td></tr></table></blockquote></div></div><div class=CToolTip id="tt10"><div class=CVariable><blockquote><table border=0 cellspacing=0 cellpadding=0 class="Prototype"><tr><td class="prettyprint">private static var _SOCKSPort: int</td></tr></table></blockquote></div></div><div class=CToolTip id="tt11"><div class=CVariable><blockquote><table border=0 cellspacing=0 cellpadding=0 class="Prototype"><tr><td class="prettyprint">private static var _socket: Socket</td></tr></table></blockquote></div></div><div class=CToolTip id="tt12"><div class=CVariable><blockquote><table border=0 cellspacing=0 cellpadding=0 class="Prototype"><tr><td class="prettyprint">private static var _controlPasswordHash: String</td></tr></table></blockquote></div></div><div class=CToolTip id="tt13"><div class=CVariable><blockquote><table border=0 cellspacing=0 cellpadding=0 class="Prototype"><tr><td class="prettyprint">private static var _controlPassword: String</td></tr></table></blockquote></div></div><div class=CToolTip id="tt14"><div class=CVariable><blockquote><table border=0 cellspacing=0 cellpadding=0 class="Prototype"><tr><td class="prettyprint">private var _connectDelay: Number</td></tr></table></blockquote></div></div><div class=CToolTip id="tt15"><div class=CVariable><blockquote><table border=0 cellspacing=0 cellpadding=0 class="Prototype"><tr><td class="prettyprint">private static var _connected: Boolean</td></tr></table></blockquote></div></div><div class=CToolTip id="tt16"><div class=CVariable><blockquote><table border=0 cellspacing=0 cellpadding=0 class="Prototype"><tr><td class="prettyprint">private static var _authenticated: Boolean</td></tr></table></blockquote></div></div><div class=CToolTip id="tt17"><div class=CConstant><blockquote><table border=0 cellspacing=0 cellpadding=0 class="Prototype"><tr><td class="prettyprint">public static const rootTorPath: String</td></tr></table></blockquote></div></div><div class=CToolTip id="tt18"><div class=CConstant><blockquote><table border=0 cellspacing=0 cellpadding=0 class="Prototype"><tr><td class="prettyprint">public static const executable: String</td></tr></table></blockquote></div></div><div class=CToolTip id="tt19"><div class=CConstant><blockquote><table border=0 cellspacing=0 cellpadding=0 class="Prototype"><tr><td class="prettyprint">public static const configFile: String</td></tr></table></blockquote></div></div><div class=CToolTip id="tt20"><div class=CVariable><blockquote><table border=0 cellspacing=0 cellpadding=0 class="Prototype"><tr><td class="prettyprint">public static var configData: XML</td></tr></table></blockquote>The contents of the config node are parsed and used to generate the config file (specified above). </div></div><div class=CToolTip id="tt21"><div class=CProperty><blockquote><table border=0 cellspacing=0 cellpadding=0 class="Prototype"><tr><td><table border=0 cellspacing=0 cellpadding=0><tr><td class="PBeforeParameters  prettyprint "nowrap>public function set config(</td><td class="PParameter  prettyprint " nowrap>configSet:</td><td class="PType  prettyprint " nowrap>&nbsp;XML</td><td class="PAfterParameters  prettyprint "nowrap>):void</td></tr></table></td></tr></table></blockquote>The configuration data for the Tor services binary. </div></div><div class=CToolTip id="tt22"><div class=CVariable><blockquote><table border=0 cellspacing=0 cellpadding=0 class="Prototype"><tr><td class="prettyprint">private var _torPHProcess: NativeProcess</td></tr></table></blockquote></div></div><div class=CToolTip id="tt23"><div class=CVariable><blockquote><table border=0 cellspacing=0 cellpadding=0 class="Prototype"><tr><td class="prettyprint">private var _synchResponseBuffer: String</td></tr></table></blockquote></div></div><div class=CToolTip id="tt24"><div class=CVariable><blockquote><table border=0 cellspacing=0 cellpadding=0 class="Prototype"><tr><td class="prettyprint">private var _asynchEventBuffer: String</td></tr></table></blockquote></div></div><div class=CToolTip id="tt25"><div class=CVariable><blockquote><table border=0 cellspacing=0 cellpadding=0 class="Prototype"><tr><td class="prettyprint">private var _synchRawResponseBuffer: String</td></tr></table></blockquote></div></div><div class=CToolTip id="tt26"><div class=CVariable><blockquote><table border=0 cellspacing=0 cellpadding=0 class="Prototype"><tr><td class="prettyprint">private var _asynchRawEventBuffer: String</td></tr></table></blockquote></div></div><div class=CToolTip id="tt27"><div class=CVariable><blockquote><table border=0 cellspacing=0 cellpadding=0 class="Prototype"><tr><td class="prettyprint">private var _enabledEvents: Array</td></tr></table></blockquote></div></div><div class=CToolTip id="tt28"><div class=CFunction><blockquote><table border=0 cellspacing=0 cellpadding=0 class="Prototype"><tr><td><table border=0 cellspacing=0 cellpadding=0><tr><td class="PBeforeParameters  prettyprint "nowrap>public function TorControl(</td><td class="PParameter  prettyprint " nowrap>controlIP:</td><td class="PType  prettyprint " nowrap>&nbsp;String</td><td class="PDefaultValuePrefix  prettyprint ">&nbsp;=&nbsp;</td><td class="PDefaultValue  prettyprint " width=100%>defaultControlIP,</td></tr><tr><td></td><td class="PParameter  prettyprint " nowrap>controlPort:</td><td class="PType  prettyprint " nowrap>&nbsp;int</td><td class="PDefaultValuePrefix  prettyprint ">&nbsp;=&nbsp;</td><td class="PDefaultValue  prettyprint " width=100%>defaultControlPort,</td></tr><tr><td></td><td class="PParameter  prettyprint " nowrap>SOCKSIP:</td><td class="PType  prettyprint " nowrap>&nbsp;String</td><td class="PDefaultValuePrefix  prettyprint ">&nbsp;=&nbsp;</td><td class="PDefaultValue  prettyprint " width=100%>defaultSOCKSIP,</td></tr><tr><td></td><td class="PParameter  prettyprint " nowrap>SOCKSPort:</td><td class="PType  prettyprint " nowrap>&nbsp;int</td><td class="PDefaultValuePrefix  prettyprint ">&nbsp;=&nbsp;</td><td class="PDefaultValue  prettyprint " width=100%>defaultSOCKSPort,</td></tr><tr><td></td><td class="PParameter  prettyprint " nowrap>controlPass:</td><td class="PType  prettyprint " nowrap>&nbsp;String</td><td class="PDefaultValuePrefix  prettyprint ">&nbsp;=&nbsp;</td><td class="PDefaultValue  prettyprint " width=100%>null,</td></tr><tr><td></td><td class="PParameter  prettyprint " nowrap>connectDelay:</td><td class="PType  prettyprint " nowrap>&nbsp;Number</td><td class="PDefaultValuePrefix  prettyprint ">&nbsp;=&nbsp;</td><td class="PDefaultValue  prettyprint " width=100%>0</td><td class="PAfterParameters  prettyprint "nowrap>)</td></tr></table></td></tr></table></blockquote>Creates an instance of TorControl.</div></div><div class=CToolTip id="tt29"><div class=CFunction><blockquote><table border=0 cellspacing=0 cellpadding=0 class="Prototype"><tr><td><table border=0 cellspacing=0 cellpadding=0><tr><td class="PBeforeParameters  prettyprint "nowrap>private function getPasswordHash(</td><td class="PParameter  prettyprint " nowrap>input:</td><td class="PType  prettyprint " nowrap>&nbsp;String</td><td class="PAfterParameters  prettyprint "nowrap>):void</td></tr></table></td></tr></table></blockquote></div></div><div class=CToolTip id="tt30"><div class=CFunction><blockquote><table border=0 cellspacing=0 cellpadding=0 class="Prototype"><tr><td><table border=0 cellspacing=0 cellpadding=0><tr><td class="PBeforeParameters  prettyprint "nowrap>private function onHashPassword(</td><td class="PParameter  prettyprint " nowrap>eventObj:</td><td class="PType  prettyprint " nowrap>&nbsp;ProgressEvent</td><td class="PAfterParameters  prettyprint "nowrap>):void</td></tr></table></td></tr></table></blockquote></div></div><div class=CToolTip id="tt31"><div class=CFunction><blockquote><table border=0 cellspacing=0 cellpadding=0 class="Prototype"><tr><td class="prettyprint">public function connect():void</td></tr></table></blockquote>Attempts to connect to the running Tor control process via pre-set (in constructor) socket settings.</div></div><div class=CToolTip id="tt32"><div class=CFunction><blockquote><table border=0 cellspacing=0 cellpadding=0 class="Prototype"><tr><td><table border=0 cellspacing=0 cellpadding=0><tr><td class="PBeforeParameters  prettyprint "nowrap>private function onTorControlReady(</td><td class="PParameter  prettyprint " nowrap>...</td><td class="PType  prettyprint " nowrap>&nbsp;args</td><td class="PAfterParameters  prettyprint "nowrap>):void</td></tr></table></td></tr></table></blockquote>Invoked when the Tor process is ready to accept a connection (for example, the process was successfully launched).</div></div><div class=CToolTip id="tt33"><div class=CFunction><blockquote><table border=0 cellspacing=0 cellpadding=0 class="Prototype"><tr><td><table border=0 cellspacing=0 cellpadding=0><tr><td class="PBeforeParameters  prettyprint "nowrap>public function disconnect(</td><td class="PParameter  prettyprint " nowrap>shutdownService:</td><td class="PType  prettyprint " nowrap>&nbsp;Boolean</td><td class="PDefaultValuePrefix  prettyprint ">&nbsp;=&nbsp;</td><td class="PDefaultValue  prettyprint " width=100%>true</td><td class="PAfterParameters  prettyprint "nowrap>):void</td></tr></table></td></tr></table></blockquote>Disconnects from the Tor control socket. </div></div><div class=CToolTip id="tt34"><div class=CProperty><blockquote><table border=0 cellspacing=0 cellpadding=0 class="Prototype"><tr><td><table border=0 cellspacing=0 cellpadding=0><tr><td class="PBeforeParameters  prettyprint "nowrap>public function set launchServices(</td><td class="PParameter  prettyprint " nowrap>launchSet:</td><td class="PType  prettyprint " nowrap>&nbsp;Boolean</td><td class="PAfterParameters  prettyprint "nowrap>):void</td></tr></table></td></tr></table></blockquote>Enables (true) or disables (false) the automatic launching of the Tor services binary at startup. </div></div><div class=CToolTip id="tt35"><div class=CFunction><blockquote><table border=0 cellspacing=0 cellpadding=0 class="Prototype"><tr><td class="prettyprint">public function prepareTorProcess():void</td></tr></table></blockquote>Prepares to launch the Tor process using supplied initialization data.</div></div><div class=CToolTip id="tt36"><div class=CFunction><blockquote><table border=0 cellspacing=0 cellpadding=0 class="Prototype"><tr><td class="prettyprint">private function launchTorProcess():void</td></tr></table></blockquote>Attempts to launch the Tor process (binary). </div></div><div class=CToolTip id="tt37"><div class=CFunction><blockquote><table border=0 cellspacing=0 cellpadding=0 class="Prototype"><tr><td><table border=0 cellspacing=0 cellpadding=0><tr><td class="PBeforeParameters  prettyprint "nowrap>public function stopTorProcess(</td><td class="PParameter  prettyprint " nowrap>...</td><td class="PType  prettyprint " nowrap>&nbsp;args</td><td class="PAfterParameters  prettyprint "nowrap>):void</td></tr></table></td></tr></table></blockquote>Stops a running Tor process, if one was started by TorContol. </div></div><div class=CToolTip id="tt38"><div class=CProperty><blockquote><table border=0 cellspacing=0 cellpadding=0 class="Prototype"><tr><td class="prettyprint">public static function get controlIP():String</td></tr></table></blockquote>The IP of the Tor control socket (usually 127.0.0.1).</div></div><div class=CToolTip id="tt39"><div class=CProperty><blockquote><table border=0 cellspacing=0 cellpadding=0 class="Prototype"><tr><td class="prettyprint">public static function get controlPort():int</td></tr></table></blockquote>The port of the Tor control socket (usually 9151).</div></div><div class=CToolTip id="tt40"><div class=CProperty><blockquote><table border=0 cellspacing=0 cellpadding=0 class="Prototype"><tr><td class="prettyprint">public static function get SOCKSIP():String</td></tr></table></blockquote>The IP of the Tor SOCKS proxy socket (usually 127.0.0.1).</div></div><div class=CToolTip id="tt41"><div class=CProperty><blockquote><table border=0 cellspacing=0 cellpadding=0 class="Prototype"><tr><td class="prettyprint">public static function get SOCKSPort():int</td></tr></table></blockquote>The port of the Tor SOCKS proxy socket (usually 1080).</div></div><div class=CToolTip id="tt42"><div class=CProperty><blockquote><table border=0 cellspacing=0 cellpadding=0 class="Prototype"><tr><td class="prettyprint">public static function get connected():Boolean</td></tr></table></blockquote>The status of the Tor control connection: true=connected, false=not connected</div></div><div class=CToolTip id="tt43"><div class=CProperty><blockquote><table border=0 cellspacing=0 cellpadding=0 class="Prototype"><tr><td class="prettyprint">public static function get authenticated():Boolean</td></tr></table></blockquote>The authentication status of the Tor control connection: true=authenticated, false=not authenticated</div></div><div class=CToolTip id="tt44"><div class=CFunction><blockquote><table border=0 cellspacing=0 cellpadding=0 class="Prototype"><tr><td class="prettyprint">public function establishNewCircuit():void</td></tr></table></blockquote>Establish a new Tor circuit through which future requests will be tunneled. </div></div><div class=CToolTip id="tt45"><div class=CFunction><blockquote><table border=0 cellspacing=0 cellpadding=0 class="Prototype"><tr><td><table border=0 cellspacing=0 cellpadding=0><tr><td class="PBeforeParameters  prettyprint "nowrap>private function generateConfigFile(</td><td class="PParameter  prettyprint " nowrap>configFile:</td><td class="PType  prettyprint " nowrap>&nbsp;File</td><td class="PAfterParameters  prettyprint "nowrap>):void</td></tr></table></td></tr></table></blockquote>Generates the Tor config file from settings derived from various class properties (see near top of this class declaration).</div></div><div class=CToolTip id="tt46"><div class=CFunction><blockquote><table border=0 cellspacing=0 cellpadding=0 class="Prototype"><tr><td><table border=0 cellspacing=0 cellpadding=0><tr><td class="PBeforeParameters  prettyprint "nowrap>private function onStandardOutData(</td><td class="PParameter  prettyprint " nowrap>eventObj:</td><td class="PType  prettyprint " nowrap>&nbsp;ProgressEvent</td><td class="PAfterParameters  prettyprint "nowrap>):void</td></tr></table></td></tr></table></blockquote>Handles STDOUT messages from the running Tor process. </div></div><div class=CToolTip id="tt47"><div class=CFunction><blockquote><table border=0 cellspacing=0 cellpadding=0 class="Prototype"><tr><td><table border=0 cellspacing=0 cellpadding=0><tr><td class="PBeforeParameters  prettyprint "nowrap>private function onConnect(</td><td class="PParameter  prettyprint " nowrap>eventObj:</td><td class="PType  prettyprint " nowrap>&nbsp;Event</td><td class="PAfterParameters  prettyprint "nowrap>):void</td></tr></table></td></tr></table></blockquote>Invoked when TorControl successfully connects to the (presumably) Tor control socket. </div></div><div class=CToolTip id="tt48"><div class=CFunction><blockquote><table border=0 cellspacing=0 cellpadding=0 class="Prototype"><tr><td><table border=0 cellspacing=0 cellpadding=0><tr><td class="PBeforeParameters  prettyprint "nowrap>private function onConnectError(</td><td class="PParameter  prettyprint " nowrap>eventObj:</td><td class="PType  prettyprint " nowrap>&nbsp;IOErrorEvent</td><td class="PAfterParameters  prettyprint "nowrap>):void</td></tr></table></td></tr></table></blockquote>Invoked when TorControl receives an IOErrorEvent.</div></div><div class=CToolTip id="tt49"><div class=CFunction><blockquote><table border=0 cellspacing=0 cellpadding=0 class="Prototype"><tr><td><table border=0 cellspacing=0 cellpadding=0><tr><td class="PBeforeParameters  prettyprint "nowrap>private function onConnectSecurityError(</td><td class="PParameter  prettyprint " nowrap>eventObj:</td><td class="PType  prettyprint " nowrap>&nbsp;IOErrorEvent</td><td class="PAfterParameters  prettyprint "nowrap>):void</td></tr></table></td></tr></table></blockquote>Invoked when TorControl receives an SecurityErrorEvent.</div></div><div class=CToolTip id="tt50"><div class=CFunction><blockquote><table border=0 cellspacing=0 cellpadding=0 class="Prototype"><tr><td class="prettyprint">private function authenticate():void</td></tr></table></blockquote>Send the authentication message to the Tor control socket.</div></div><div class=CToolTip id="tt51"><div class=CProperty><blockquote><table border=0 cellspacing=0 cellpadding=0 class="Prototype"><tr><td class="prettyprint">private function get usePasswordAuthentication():Boolean</td></tr></table></blockquote></div></div><div class=CToolTip id="tt52"><div class=CFunction><blockquote><table border=0 cellspacing=0 cellpadding=0 class="Prototype"><tr><td><table border=0 cellspacing=0 cellpadding=0><tr><td class="PBeforeParameters  prettyprint "nowrap>public function sendRawControlMessage(</td><td class="PParameter  prettyprint " nowrap>msg:</td><td class="PType  prettyprint " nowrap>&nbsp;String</td><td class="PAfterParameters  prettyprint "nowrap>):Boolean</td></tr></table></td></tr></table></blockquote>Sends a raw control message to the connected and authenticated control socket. </div></div><div class=CToolTip id="tt53"><div class=CFunction><blockquote><table border=0 cellspacing=0 cellpadding=0 class="Prototype"><tr><td><table border=0 cellspacing=0 cellpadding=0><tr><td class="PBeforeParameters  prettyprint "colspan=5>override public function addEventListener(</td></tr><tr><td>&nbsp;&nbsp;&nbsp;</td><td class="PParameter  prettyprint " nowrap>type:</td><td class="PType  prettyprint " nowrap>&nbsp;String,</td><td class="PDefaultValuePrefix  prettyprint ">&nbsp;&nbsp;</td><td class="PDefaultValue  prettyprint " width=100%></td></tr><tr><td>&nbsp;&nbsp;&nbsp;</td><td class="PParameter  prettyprint " nowrap>listener:</td><td class="PType  prettyprint " nowrap>&nbsp;Function,</td><td class="PDefaultValuePrefix  prettyprint ">&nbsp;&nbsp;</td><td class="PDefaultValue  prettyprint " width=100%></td></tr><tr><td>&nbsp;&nbsp;&nbsp;</td><td class="PParameter  prettyprint " nowrap>useCapture:</td><td class="PType  prettyprint " nowrap>&nbsp;Boolean</td><td class="PDefaultValuePrefix  prettyprint ">&nbsp;=&nbsp;</td><td class="PDefaultValue  prettyprint " width=100%>false,</td></tr><tr><td>&nbsp;&nbsp;&nbsp;</td><td class="PParameter  prettyprint " nowrap>priority:</td><td class="PType  prettyprint " nowrap>&nbsp;int</td><td class="PDefaultValuePrefix  prettyprint ">&nbsp;=&nbsp;</td><td class="PDefaultValue  prettyprint " width=100%>0,</td></tr><tr><td>&nbsp;&nbsp;&nbsp;</td><td class="PParameter  prettyprint " nowrap>useWeakReference:</td><td class="PType  prettyprint " nowrap>&nbsp;Boolean</td><td class="PDefaultValuePrefix  prettyprint ">&nbsp;=&nbsp;</td><td class="PDefaultValue  prettyprint " width=100%>false</td></tr><tr><td class="PAfterParameters  prettyprint "colspan=5>):void</td></tr></table></td></tr></table></blockquote></div></div><div class=CToolTip id="tt54"><div class=CFunction><blockquote><table border=0 cellspacing=0 cellpadding=0 class="Prototype"><tr><td><table border=0 cellspacing=0 cellpadding=0><tr><td class="PBeforeParameters  prettyprint "nowrap>private function enableTorEvent(</td><td class="PParameter  prettyprint " nowrap>eventType:</td><td class="PType  prettyprint " nowrap>&nbsp;String</td><td class="PAfterParameters  prettyprint "nowrap>):void</td></tr></table></td></tr></table></blockquote>Enable a Tor control event (sent from the running process).</div></div><div class=CToolTip id="tt55"><div class=CFunction><blockquote><table border=0 cellspacing=0 cellpadding=0 class="Prototype"><tr><td><table border=0 cellspacing=0 cellpadding=0><tr><td class="PBeforeParameters  prettyprint "nowrap>private function disableTorEvent(</td><td class="PParameter  prettyprint " nowrap>eventType:</td><td class="PType  prettyprint " nowrap>&nbsp;String</td><td class="PAfterParameters  prettyprint "nowrap>):void</td></tr></table></td></tr></table></blockquote>Disable a Tor control event (sent from the running process).</div></div><div class=CToolTip id="tt56"><div class=CFunction><blockquote><table border=0 cellspacing=0 cellpadding=0 class="Prototype"><tr><td class="prettyprint">private function disableAllTorEvents():void</td></tr></table></blockquote>Disables all Tor control events (sent from the running process).</div></div><div class=CToolTip id="tt57"><div class=CProperty><blockquote><table border=0 cellspacing=0 cellpadding=0 class="Prototype"><tr><td class="prettyprint">private function get enabledAsyncEventList():String</td></tr></table></blockquote></div></div><div class=CToolTip id="tt58"><div class=CFunction><blockquote><table border=0 cellspacing=0 cellpadding=0 class="Prototype"><tr><td><table border=0 cellspacing=0 cellpadding=0><tr><td class="PBeforeParameters  prettyprint "nowrap>private function addUniqueAsyncEvent(</td><td class="PParameter  prettyprint " nowrap>eventType:</td><td class="PType  prettyprint " nowrap>&nbsp;String</td><td class="PAfterParameters  prettyprint "nowrap>):void</td></tr></table></td></tr></table></blockquote></div></div><div class=CToolTip id="tt59"><div class=CFunction><blockquote><table border=0 cellspacing=0 cellpadding=0 class="Prototype"><tr><td><table border=0 cellspacing=0 cellpadding=0><tr><td class="PBeforeParameters  prettyprint "nowrap>private function removeAsyncEvent(</td><td class="PParameter  prettyprint " nowrap>eventType:</td><td class="PType  prettyprint " nowrap>&nbsp;String</td><td class="PAfterParameters  prettyprint "nowrap>):void</td></tr></table></td></tr></table></blockquote></div></div><div class=CToolTip id="tt60"><div class=CFunction><blockquote><table border=0 cellspacing=0 cellpadding=0 class="Prototype"><tr><td><table border=0 cellspacing=0 cellpadding=0><tr><td class="PBeforeParameters  prettyprint "nowrap>private function onData(</td><td class="PParameter  prettyprint " nowrap>eventObj:</td><td class="PType  prettyprint " nowrap>&nbsp;ProgressEvent</td><td class="PAfterParameters  prettyprint "nowrap>):void</td></tr></table></td></tr></table></blockquote></div></div><div class=CToolTip id="tt61"><div class=CFunction><blockquote><table border=0 cellspacing=0 cellpadding=0 class="Prototype"><tr><td><table border=0 cellspacing=0 cellpadding=0><tr><td class="PBeforeParameters  prettyprint "nowrap>private function isMultilineMessage(</td><td class="PParameter  prettyprint " nowrap>separator:</td><td class="PType  prettyprint " nowrap>&nbsp;String</td><td class="PAfterParameters  prettyprint "nowrap>):Boolean</td></tr></table></td></tr></table></blockquote></div></div><div class=CToolTip id="tt62"><div class=CFunction><blockquote><table border=0 cellspacing=0 cellpadding=0 class="Prototype"><tr><td><table border=0 cellspacing=0 cellpadding=0><tr><td class="PBeforeParameters  prettyprint "nowrap>private function dispatchAsynchTorEvent(</td><td class="PParameter  prettyprint " nowrap>msgObj:</td><td class="PType  prettyprint " nowrap>&nbsp;Object</td><td class="PAfterParameters  prettyprint "nowrap>):void</td></tr></table></td></tr></table></blockquote></div></div><div class=CToolTip id="tt63"><div class=CFunction><blockquote><table border=0 cellspacing=0 cellpadding=0 class="Prototype"><tr><td><table border=0 cellspacing=0 cellpadding=0><tr><td class="PBeforeParameters  prettyprint "nowrap>private function dispatchTorResponse(</td><td class="PParameter  prettyprint " nowrap>msgObj:</td><td class="PType  prettyprint " nowrap>&nbsp;Object</td><td class="PAfterParameters  prettyprint "nowrap>):void</td></tr></table></td></tr></table></blockquote></div></div><div class=CToolTip id="tt64"><div class=CFunction><blockquote><table border=0 cellspacing=0 cellpadding=0 class="Prototype"><tr><td><table border=0 cellspacing=0 cellpadding=0><tr><td class="PBeforeParameters  prettyprint "nowrap>private function parseReceivedData(</td><td class="PParameter  prettyprint " nowrap>dataStr:</td><td class="PType  prettyprint " nowrap>&nbsp;String</td><td class="PAfterParameters  prettyprint "nowrap>):Object</td></tr></table></td></tr></table></blockquote></div></div><div class=CToolTip id="tt65"><div class=CFunction><blockquote><table border=0 cellspacing=0 cellpadding=0 class="Prototype"><tr><td><table border=0 cellspacing=0 cellpadding=0><tr><td class="PBeforeParameters  prettyprint "nowrap>private function replaceMeta(</td><td class="PParameter  prettyprint " nowrap>input:</td><td class="PType  prettyprint " nowrap>&nbsp;String,</td></tr><tr><td></td><td class="PParameter  prettyprint " nowrap>meta:</td><td class="PType  prettyprint " nowrap>&nbsp;String,</td></tr><tr><td></td><td class="PParameter  prettyprint " nowrap>replace:</td><td class="PType  prettyprint " nowrap>&nbsp;String</td><td class="PAfterParameters  prettyprint "nowrap>):String</td></tr></table></td></tr></table></blockquote></div></div><!--END_ND_TOOLTIPS-->




<div id=MSearchResultsWindow><iframe src="" frameborder=0 name=MSearchResults id=MSearchResults></iframe><a href="javascript:searchPanel.CloseResultsWindow()" id=MSearchResultsWindowClose>Close</a></div>


<script language=JavaScript><!--
if (browserType) {if (browserVer) {document.write("</div>"); }document.write("</div>");}// --></script></body></html>